从纯JavaScript中消费salesforce chatter rest服务

时间:2012-08-19 17:48:28

标签: javascript rest salesforce same-origin-policy salesforce-chatter

我正在创建一个浏览器扩展程序,使用rest api发布到salesforce chatter。一旦我从OAuth用户代理程序流中获取access_token,我无法通过浏览器调用来自javascript的休息服务,因为浏览器的原始策略相同。我不想要使用服务器作为代理,因为我想将扩展名纯粹作为客户端。

我尝试了JSONP解决方法,但它只适用于GET,我需要POST将一个Feed发布到salesforce chatter

有没有办法。请提出一些解决方法

4 个答案:

答案 0 :(得分:1)

也许考虑将您的电话转到salesforce中的自定义休息服务。使用@RestResource注释设置一个全局类,然后在其中使用doPost方法处理你传递的内容,在你的情况下进行发布。

您仍然需要Oauth步骤来检索令牌,然后通过Authorization:Bearer标头消息传递其余请求。

在此https://wiki.developerforce.com/page/Creating_REST_APIs_using_Apex_REST

上查看好文章

答案 1 :(得分:1)

自Salesforce '15以来,您可以配置CORS。因此,您的应用程序域名列入白名单,您可以随心所欲。无法解决获取access_token的问题。纯粹通过javascript获取access_token的唯一方法是使用User-Agent Flow,因为访问令牌作为URL Part传递....

答案 2 :(得分:0)

一种选择是使用http://www.ajax-cross-domain.com/

等网站

以下是此问题的良好参考http://www.d-mueller.de/blog/cross-domain-ajax-guide/

答案 3 :(得分:0)

使用jsforce,由于CORS问题,您需要proxy,抱歉。

相关问题