Angularjs Salesforce和Angular具有独立的服务器

Angularjs Salesforce和Angular具有独立的服务器,angularjs,salesforce,cors,Angularjs,Salesforce,Cors,我有两套服务器: apache以angular风格提供html/js/css页面 提供Json的SalesForce后端rest API Salesforce具有OAuth身份验证,但它甚至不允许javscript执行选项调用,以确定它是否能够执行它真正想要的POST调用: 在没有代理或jsonp的情况下,有没有办法解决这个问题 Salesforce APEX Rest API配置是否错误?源域已被列入白名单 更新: 因此,需要一些角度代码来进行调用: var config = {

我有两套服务器:

  • apache以angular风格提供html/js/css页面

  • 提供Json的SalesForce后端rest API

  • Salesforce具有OAuth身份验证,但它甚至不允许javscript执行选项调用,以确定它是否能够执行它真正想要的POST调用:

    在没有代理或jsonp的情况下,有没有办法解决这个问题

    Salesforce APEX Rest API配置是否错误?源域已被列入白名单

    更新: 因此,需要一些角度代码来进行调用:

    var config = { 
        method: 'POST',
        url: SalesforceRestApi,
        headers: {
            Authorization: "OAuth "+authToken,
            "Content-Type": "application/pdf"               
        },
        data : caseRequest,     
    };
    
    var http = angular.element(document.body).injector().get('$http');
    
    http(config).then(function(response){ console.log(response); });
    
    这里的代码返回旧的Chrome错误:


    无法加载XMLHttpRequest。对飞行前请求的响应未通过访问控制检查:请求的资源上不存在“访问控制允许来源”标头。因此,不允许访问源“”。响应的HTTP状态代码为401。

    您使用什么代码进行呼叫?你可能只是打错了电话。或者忘记在密码中使用安全令牌。或者其他任何事情。我已经更新了问题,以显示一些示例代码。。应用程序的其余部分正在调用其他3个后端服务以获取资源、身份验证等,这些调用都工作正常……据我所知,如果没有代理,就无法绕过此问题,因为导致错误消息的CORS限制是由您的浏览器强制执行的。如果Salesforce服务器甚至不响应选项请求,则它似乎不太可能被配置为允许您所需的内容,即使您可以通过该请求。您使用什么代码进行呼叫?你可能只是打错了电话。或者忘记在密码中使用安全令牌。或者其他任何事情。我已经更新了问题,以显示一些示例代码。。应用程序的其余部分正在调用其他3个后端服务以获取资源、身份验证等,这些调用都工作正常……据我所知,如果没有代理,就无法绕过此问题,因为导致错误消息的CORS限制是由您的浏览器强制执行的。如果Salesforce服务器甚至不响应选项请求,那么它似乎不太可能被配置为允许您所需的内容,即使您可以通过该请求。