Matt Harris の tmhOAuth ライブラリを使用して、Yelp の API への認証済みリクエストを生成しています。私はすでに同じライブラリを使用して Twitter API にアクセスしていますが、うまく機能しています。
Yelp 開発者 API 資格情報にサインアップし、それらを使用しています。
次のようなリクエストを行うように tmhOAuth をセットアップしました。
http://api.yelp.com/v2/search?limit=20&location=アトランタ&term=食べ物
これについて Yelp から何らかのエラーが表示されると思われるかもしれませんが、私の推測では、何らかの理由で認証資格情報が正しく出力されていません。たとえば、コンシューマ キーとシークレット、およびユーザー トークンとシークレットをランダムな文字に変更しますが、これらの偽のキーを使用してリクエストを行うと、以下と同じ応答が返され、まだ認証エラー メッセージは表示されません。ただ何もない!
Yelp API への呼び出しを最初に設定したときに、他の誰かが同様の応答に遭遇し、明らかに間違っていることを教えてくれたと確信しています。どんな助けでも大歓迎です。
Yelp からの応答は次のとおりです。
Array (
[headers] => Array (
[date] => Sat, 03 Nov 2012 21:36:15 GMT
[server] => Apache
[x_node] => wsgi, web31, api_com
[content_length] => 0
[cache_control] => max-age=0, must-revalidate, no-cache, no-store, private
[expires] => Sat, 03 Nov 2012 21:36:15 GMT
[pragma] => no-cache [set_cookie] => bse=0aff211810c8d90f05c4e8438a3e0b7b; Domain=.yelp.com; Path=/; HttpOnly
[location] => http://api.yelp.com/v2/search?limit=20&location=Atlanta&term=food
[vary] => User-Agent
[connection] => close
[content_type] => text/html; charset=UTF-8
[x_mode] => rw
[x_proxied] => lb2
)
[code] => 301
[response] =>
[info] => Array (
[url] => https://api.yelp.com/v2/search?limit=20&location=Atlanta&term=food
[content_type] => text/html; charset=UTF-8
[http_code] => 301
[header_size] => 534
[request_size] => 439
[filetime] => -1
[ssl_verify_result] => 0
[redirect_count] => 0
[total_time] => 0.653941
[namelookup_time] => 0.000981
[connect_time] => 0.073796
[pretransfer_time] => 0.297663
[size_upload] => 0
[size_download] => 0
[speed_download] => 0
[speed_upload] => 0
[download_content_length] => 0
[upload_content_length] => 0
[starttransfer_time] => 0.653791
[redirect_time] => 0
[certinfo] => Array ( )
[request_header] => GET
/v2/search?limit=20&location=Atlanta&term=food
HTTP/1.1 User-Agent: themattharris' HTTP
Client Host: api.yelp.com Accept: */* Authorization: OAuth
oauth_consumer_key="****************",
oauth_nonce="*******************",
oauth_signature="***************************",
oauth_signature_method="HMAC-SHA1",
oauth_timestamp="1351978544",
oauth_token="******************",
oauth_version="1.0"
)
)
この投稿では、上記の実際のキー、ノンス、および署名文字列を明らかに難読化しています。