我正在尝试在Chrome中开发Google Cast发件人应用程序。
API将变量cast.isAvailable设置为true,并将MessageEvent发布到主机页面窗体的窗体对象:
{source: "CastApi", event: "Hello", api_version: [, ]}
当我使用我的开发环境和localhost
时,消息部分没有发生,尽管事实上api肯定是被注入并运行的(我可以看到使用chrome开发人员工具,还有健全性检查{{控制台中的1}}返回window.cast.isAvailable
。)
发送消息的代码是文件的最后一行:
true
消息永远不会发布,因为在我的开发机器上,"undefined" != typeof chrome && "undefined" != typeof chrome.runtime || window.postMessage({source:cast.NAME, event:"Hello", api_version:cast.VERSION}, "*");
是一个对象。
在我的服务器上,邮件已发布,因为chrome.runtime
未定义。
有人可以告诉我chrome.runtime
是什么,以及为什么在我访问本地开发服务器而不是我的生产服务器时设置它?
如何在localhost上调试我的发件人应用程序?
答案 0 :(得分:0)
我无法在localhost
或127.0.0.1
上使用此功能。
但作为解决方法,我编辑了我的hosts
文件,并将我的计算机名称映射到localhost
,当我通过使用该别名访问时,它可以正常工作。
我的操作系统或正在运行的chrome版本中似乎有一些东西填充chrome.runtime
localhost
...