salesforce rest api INVALID_SESSION_ID错误
|
我正在使用salesforce rest api从我的rails应用程序访问salesforce帐户。我创建了一个远程访问应用程序,并获得了密钥N id。我能够对用户进行身份验证,并获得auth_token,实例url等。但是,当我在\“ instance_url / services / data / v20.0 \”发送请求以及访问令牌时,出现此错误:
[{\"message\":\"Session expired or invalid\",\"errorCode\":\"INVALID_SESSION_ID\"}]
我有一个开发人员salesforce帐户,并且为每个配置文件都启用了true的API,但“已认证的网站”配置文件(无法访问)除外。
拜托,有人可以帮我吗?
我正在通过以下请求对用户进行身份验证
HTTParty.post \"login.salesforce.com/services/oauth2/token\";, :body=>{\"grant_type\"=>\"authorization_code\",\"code\"=>\"abc}\",\"client_secret\"=>\"abc\", \"client_id\"=>\"abc\",\"format\"=>\"json\",\"redirect_uri\"=>\"localhost:3000/salesforce/callback\";}
这将返回签名,id,instance_url,issued_at,access_token和refresh_token
HTTParty.get \"ap1.salesforce.com/services/data/v20.0\";, :headers=>{\"Authentication\"=>\"OAuth access_token\", \"Content-Type\"=>\"application/json\"}
回应
[{\"errorCode\"=>\"INVALID_SESSION_ID\", \"message\"=>\"Session expired or invalid\"}]
没有找到相关结果
已邀请:
7 个回复
邦绊门蔽惩
屡倒雷图
埃输林桨铃
郸身
亲奋漏
字符引起了问题。
枫湃揩乾纲
耐扫鹤胶鞭
设置可能是导致有效代码的可能因素。从以下Salesforce KB文章中: 描述 如果启用了“将会话锁定到其会话的IP地址”,则如果使用OAuth2访问令牌执行Salesforce REST API调用,即使在同一Apex事务中获得了令牌,也可能会返回INVALID_SESSION_ID。 解析度 \“将会话锁定到其发起的IP地址\”是严格的,在这种情况下,内部IP地址不会自动列入白名单。由于登录标注和后续的REST API标注可能是通过不同的内部IP地址执行的,因此如果启用了上述首选项,则在使用访问令牌时可能会返回INVALID_SESSION_ID。 为了解决这个问题,您可以使用连续IP强制执行功能(在Summer \ '15中引入): 将\“将会话锁定到其起源的IP地址\”关闭, 打开\“在每个请求上强制登录IP范围\”, 选择连接的应用程序的IP放松策略\“强制IP限制\”,然后 将Salesforce的内部IP范围10.0.0.0到10.255.255.255添加到需要使用Salesforce的REST API的配置文件列表中。 或只是放松IP限制: 关闭\“将会话锁定到其起源的IP地址\”,然后 选择连接的应用程序的IP放松策略\“放松IP限制\”