2014-06-08 131 views
0

有人能指出我正确的方向来开发可与Safari网站通信的Mac应用程序吗?我不想使用网络视图,我希望它在Safari浏览器中与网站进行通信。Mac应用程序与safari中的web应用程序通信

我使用应用程序url方案(应用程序名称:// some/url /)将网站消息发送到本机应用程序时就好了。

理想情况下,我想我们的应用程序来对我们的页面JS事件很少内部网站,并触发重新加载数据等

我havne't能找到任何这文档提供单点登录。

+0

'[[NSWorkspace sharedWorkspace] openURL:' - 转到默认浏览器。这是足够的还是你想要的不仅仅是打开一个URL? – stevesliva

+0

@stevesliva我需要的不仅仅是打开一个URL。如果用户已经打开页面,我想发送该特定的页面数据。了解一种将cookies注入Safari的方法? – Sean256

回答

0

所以这就是我最终做的事情,这是相当复杂的,所以如果任何人有更好的建议,请让我知道。

我的Mac应用程序做两件事情,当它开始

  • 创建目录〜/ .appwebserverfiles
  • 启动上述目录一个简单的Python的网络服务器,因为它的根

Mac电脑应用程序可以将token.jsonp写入此目录,如下所示:

singleSignOnCallback({"token":"sometokenthinghere"}); 

使用jQuery将使Ajax调用,像这样的网站:

$.ajax({ 
    url: "http://localhost:8585/token.jsonp", 
    dataType: 'jsonp' 
}); 

当这个Ajax是完整的,因为它的JSONP将excecute一个数据类型的任何JS它找到它。这将调用一个函数称为:singleSignOnCallback()

我现在可以注入ANY js到我们的内部webapp使用这个。

编辑: 我还应该补充说,这适用于任何浏览器。

相关问题