私はいくつかのjsonデータを取得するためにAPI呼び出しを使用していますが、ユーザーのIDに基づいて異なるデータを返す複数のIDを使用して呼び出しを実行するforループを使用しています。そうAPIエラー処理
{"result":{"elements":[{"id":"dslkjafsadl","name":"Test","ownerId"
:"sdfadfsfsda","lastModified":"2016","isActive":true},
{"id":"dsafsad","name":"Test","ownerId":"sdfasdfa","lastModified":"2016","isActive":true}],"nextPage":null},"meta":{"httpStatus":"200 - OK","requestId":"3242343"}}
:権限を持つユーザーのための
{"meta":{"httpStatus":"401 - Unauthorized","error":{"errorMessage":"Insufficient
permissions.","errorCode":"ARH_8.5"},"requestId":null}}
と、この:JSONデータがやや権限のないユーザーのために次のようになりますので、だから、基本的に我々は我々のユーザーの一部の権限を更新する必要があります私の質問は、もし私がアクセス権の有無にかかわらず多くの結果を持つ大きな応答を持っていれば、どのように私はアクセス権を持つユーザーからIDを引き出し、アクセス権なしでIDを除外できますか?私が受け取るこのコードから
requestId = request_id = [element['requestId'] for element in data['result']['elements']]
:
は、応答を変数に「データ」が格納されていると私は探していますIDは、これは私が試したコードである「requestId」に保存されますと言いますTypeErrorを返し、最初の応答が正しいアクセス権を持たないユーザーであるため '結果'を認識しません。
ベストな方法は、元の要求からのHTTPステータスコードをチェックすることです。'requests'オブジェクトの' status_code'に許可が拒否された '401'が含まれるように、' requested'ライブラリを使ってGETを実行するとします。他のライブラリを使用することもできます。他のすべてが失敗した場合は、本体を使用して 'x ['meta'] ['httpStatus'] value'をチェックすることができます。 – sal