Chromecast CAF接收器,关闭对http请求的处理
先读一些背景知识:) 我正在用CAF SDK做一个自定义接收器 通过类似的关闭处理,我尝试在回调中发送一些http请求,如:Chromecast CAF接收器,关闭对http请求的处理,chromecast,google-cast,custom-receiver,Chromecast,Google Cast,Custom Receiver,先读一些背景知识:) 我正在用CAF SDK做一个自定义接收器 通过类似的关闭处理,我尝试在回调中发送一些http请求,如: receiver.addEventListener( cast.framework.system.EventType.SHUTDOWN, e => { // some http requests HttpHandler.post(url, somePayload); HttpHandler.pos
receiver.addEventListener(
cast.framework.system.EventType.SHUTDOWN,
e => {
// some http requests
HttpHandler.post(url, somePayload);
HttpHandler.post(anotherUrl, someOtherPayload);
....... (more requests to go)
});
但是,我不能保证这些请求会到达目的地,因为接收方应用程序将随时终止(可能不到1秒)。事实证明,这些请求也没有到达目的地
据我所知,没有办法推迟关闭带有CAF SDK本身的接收器应用程序
有解决办法吗?有没有办法在CAF SDK的帮助下推迟关机 答案似乎很简单:将所有http请求都转换为同步 缺点也很明显,同步请求会阻塞线程。当一个请求由于未知原因挂起在某个位置的中间时,除非强制关闭,否则脚本将永远被阻止
仍然在寻找更好的方法来改进它。我做了更多的研究,结果证明你也可以使用
window.addEventListener("beforeunload", e => {
...
});
而不是
receiver.addEventListener(
cast.framework.system.EventType.SHUTDOWN,
e => {
...
});
唉,这无助于确保回调中的所有内容都已执行:beforeunload回调将以与关机处理程序相同的方式终止。Hi@Tom,我需要chrome cast receiver的帮助,我无法接收来自发送方的消息,调试时,我发现日志使用默认名称空间,即使我使用了自定义名称空间。你能帮我一下吗?谢谢