问题遇到的现象和发生背景
视频推送服务部署在nginx.前端使用esayplayer的url参数是流地址。但是easyplayer会发一个head请求。前端直接使用get请求能获取到流信息,但是用head 不行.
问题相关代码,请勿粘贴截图
运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果
easyplayer 是否提供修改请求方式.比如修改成get请求.
视频推送服务部署在nginx.前端使用esayplayer的url参数是流地址。但是easyplayer会发一个head请求。前端直接使用get请求能获取到流信息,但是用head 不行.
easyplayer 是否提供修改请求方式.比如修改成get请求.
http://open.tsingsee.com/EasyPlayer-element.min.js
该是可以改的,没研究过这个播放器请求需要返回什么数据。上面是官网的js文件,搜索f.open(t.method.toUpperCase(),然后修改为f.open("GET"就变get请求了,但是回调获取数据可能会有问题。下面是xhr的回调函数。f为xhr对象,p是onreadystatechange事件
f[p] = function() {
if (f && (4 === f.readyState || v) && (0 !== f.status || f.responseURL && 0 === f.responseURL.indexOf("file:"))) {
var n = "getAllResponseHeaders"in f ? a(f.getAllResponseHeaders()) : null
, r = t.responseType && "text" !== t.responseType ? f.response : f.responseText
, o = {
data: r,
status: 1223 === f.status ? 204 : f.status,
statusText: 1223 === f.status ? "No Content" : f.statusText,
headers: n,
config: t,
request: f
};
i(e, c, o),
f = null
}
}