我设置了一个 twitter 开发帐户,并且已经用它创建了一个小应用程序。今天我尝试将 cURL 与 Twitter 的 oAuth 签名结果页面(它为您生成 cURL 命令)一起使用。
我正在尝试运行以下 GET > https://api.twitter.com/1.1/statuses/home_timeline.json
当我将其粘贴到 Twitter 以将其转换为 cURL 命令时,我得到 >
curl --get ' https://api.twitter.com/1.1/statuses/home_timeline.json ' --header '授权:OAuth oauth_consumer_key="CONSUMER_KEY", oauth_nonce="OAUTH_NONCE_KEY", oauth_signature="OAUTH_SIG_KEY", oauth_signature_method= "HMAC-SHA1", oauth_timestamp="1379360432", oauth_token="OAUTH_TOKEN", oauth_version="1.0"' --verbose
当我尝试使用命令在 Windows 7 上运行 cURL 时,出现以下错误 >
*协议'https在libcurl中不支持或禁用*关闭连接-1 curl:(1)协议'https在libcurl中不支持或禁用*重建URL到:OAuth / *添加句柄:conn:0x1dbd530 *添加句柄:发送:0 * 添加句柄:recv: 0 * Curl_addHandleToPipeline: length: 1 * - Conn 0 (0x1dbd530) send_pipe: 1, recv_pipe: 0
其次是更多错误..我做错了什么?
我可以成功运行以下 > curl https://twitter.com/ </p>
我看到了上述命令的结果。为什么不推特--get 工作?我是否正确运行它?
编辑当我删除引号并按如下方式运行时>
curl --get https://api.twitter.com/1.1/statuses/home_timeline.json --header 授权:OAuth oauth_consumer_key="KEY1", oauth_nonce="KEY2", oauth_signature="KEY3", oauth_signature_method="HMAC- SHA1", oauth_timestamp="1379364692", oauth_token="KEY4", oauth_version="1.0" --verbose
我走得更远..但我得到一个不同的错误>
SSL certificate verify ok.
GET /1.1/statuses/home_timeline.json HTTP/1.1
User-Agent: curl/7.32.0
Host: api.twitter.com
Accept: */*
HTTP/1.1 400 Bad Request
content-length: 61
content-type: application/json; charset=utf-8
date: Mon, 16 Sep 2013 20:54:55 UTC
Server tfe is not blacklisted
server: tfe
set-cookie: guest_id=v1%3A137936489538017864; Domain=.twitter.com; Path=/; Exp
ires=Wed, 16-Sep-2015 20:54:55 UTC
strict-transport-security: max-age=631138519
{"errors":[{"message":"Bad Authentication data","code":215}]}* Connection #0 to
host api.twitter.com left intact
Rebuilt URL to: OAuth/
有任何想法吗?