監査データのダウンロードエラー(API2.0)
①監査データのダウンロードAPIのQuery Parametersの取得開始日 ・取終了
日(YYYY-MM-DDThh:mm:ssTZD)フォーマットについて、YYYY-MM-DDThh:mm:ssTZD型の時間URLエンコードすると、「:」一緒にエンコードれさました、記載した「example : 2021-11-01T00:00:00%2B09:00」と異なります、正しいURLエンコード方法をご教授いただければ幸いです。
②固定で正しい取得開始日 ・取終了日設定後、監査データのダウンロードAPI呼んで、401エラー【HTTP 401 Unauthorized】のエラーが返却しました、色々な方法を試した、解決できてないです。同じ認証情報でユーザー登録・更新APIアクセス出来ます。これ何の原因ご教授いただければ幸いです。
投稿に新しいコメントが追加されましたら通知を送信します。
コメント3
업데이트 된 답글입니다.
ttt@api勉強中
すみません。ご質問のアドバイスになってないかもしれないのですが、、、
①私はこのようにリクエストして正常に取得できているのですが参考になりますか?
https://www.worksapis.com/v1.0/audits/logs/download?service=message&startTime=2022-09-01T00:00:00%2B09:00&endTime=2022-09-13T00:00:00%2B09:00&langage=ja_JP
②Unauthorizedということは認証に失敗しているのではないかなと思ったのですが、auditのScopeが設定されていない可能性があるのかなと思いました。
2022.12.26
업데이트 된 답글입니다.
一一_839668 投稿者
ご回答ありがとうございました。
上記の問題も解決しました。
①の原因:
・springframeworkのUriComponentsBuilderでパスパラメータエンコードするの場合、記号「+」エンコードされなかったです。
自分で「+」を「%2B」に変換必要になります。
・時間フォーマット間違います。正: yyyy-MM-dd'T'HH:mm:ssZZ
②の原因:
一回監視データダウンロードAPIをアクセスして、レスポンスにLocationヘッダーダウンロードURLがあるから自動でダウンロードURLにリダイレクトしまいました、その時認証に失敗しました。
解決案:HttpURLConnectionのsetInstanceFollowRedirects属性をfalseに設定して、リダイレクトに従わないようにします。
2022.12.27
업데이트 된 답글입니다.
Nick
私も慣れない python で get するとなぜか認証エラーになり token は正しいはずなのに、、とハマってしまいました。
{"code":"UNAUTHORIZED","description":"Authentication failed."}
コメントに記載がある通りリダイレクトしないようにすることで、レスポンスの LocationヘッダーからダウンロードURLを正常に取得できるようになりました。ありがとうございます!
requests.get(url=url, params=params, headers=headers)
↓
requests.get(url=url, params=params, headers=headers, allow_redirects=False)
2023.04.19
まだ、解決できませんか?
今すぐ実際に使用しているLINE WORKSユーザーに質問してみましょう。