LinkedIn API POST请求出错401

时间:2012-01-12 10:35:34

标签: php http cakephp login

当尝试 POST 状态更新到LinkedIn时,我收到 401 Unauthorized 错误。我将LinkedIn应用中的实时状态更改为直播,但问题仍然存在。我尝试http://simplelinkedin.fiftymission.net/demo/但我仍然遇到401错误... GET 请求(获取用户个人资料数据,......)一切都很好。

这是请求数据:

POST /v1/people/~/shares HTTP/1.1
Host: api.linkedin.com
Connection: close
User-Agent: CakePHP
content-type: application/x-www-form-urlencoded
x-li-format: json
Authorization: OAuth oauth_version="1.0",oauth_signature_method="HMAC-SHA1",oauth_consumer_key="2z82i0j5ahjb",oauth_token="2de47758-86e1-4684-afd3-f55a56051d2d",oauth_nonce="03aae214a19e83fe2757e8061a4b1468",oauth_timestamp="1326363432",oauth_signature="WNbKgq1FnkIgIALI%2FMfVnBHLgTg%3D"
Content-Length: 131

{"comment":"I am tesing CakePHP","content":{"title":"","submitted-url":"","submitted-image-url":""},"visibility":{"code":"anyone"}}

这是响应数据:

HTTP/1.1 401 Unauthorized
Server: Apache-Coyote/1.1
Date: Thu, 12 Jan 2012 10:17:12 GMT
Vary: *
x-li-format: json
Content-Type: application/json;charset=UTF-8
Content-Length: 230

{
  "errorCode": 0,
  "message": "[unauthorized]. OAU:2z82i0j5ahjb|2de47758-86e1-4684-afd3-f55a56051d2d|*01|*01:1326363432:WNbKgq1FnkIgIALI/MfVnBHLgTg=",
  "requestId": "5XSUW613R2",
  "status": 401,
  "timestamp": 1326363433324
}

有人可以帮我调试一下来解决这个问题吗?谢谢!

1 个答案:

答案 0 :(得分:2)

发现问题了! Content-Type 必须是 application / json 才能工作!我认为 x-li-format:json 就够了,但不是。