見出し画像

【アクセストークンの話】qiitaのAPIで記事をPOST投稿するときにハマった【laravel】

問題
qiitaのAPIでPOST投稿したいけど401 unauthorizedのエラーが返ってきて投稿できない。

以上を解決したいので、数日間いろいろ検索したりしていました。

結果、OAuth、トークンなどauthorize関係はかなりややこしいので、深入りすると時間がかかったり、迷走してしまうと感じました。

初心者のうちは、あまり深入りせずに、少しずつ勉強して実装するのが良さげだと思います。


上記のため、qiitaのAPIを使ってhttpメソッド:POSTで投稿するくらいならシンプルで簡単だということが分かりました。

とりあえず、qiitaのAPIで外部から記事を投稿できるようにするためには、まずはトークンの表面的な仕組みだけ理解しておけば十分だと思いました。

トークンの仕組み

クライアント:僕のような、投稿したい側。

サーバー:僕から投稿したいとリクエストを受けるqiita側

トークンはIDのようなもので、サーバー側が発行します。

発行されたトークンを記事投稿などする際に、クライアント側からサーバーに対してトークンを提示をすることで、本人確認をしているような感じ。

→qiita APIの投稿機能では、サーバー側の発行したトークンと、クライアントのトークンが一致したら、投稿できるという仕組みにトークンを使っています。

トークンの仕組みを使うことで、自由すぎる投稿や乗っ取りなどによる悪意のある行為に制限をかけられることがメリット。

qiitaでトークンを発行する方法

続きは更新します。










この記事が気に入ったらサポートをしてみませんか?