LoginSignup
0
0

More than 3 years have passed since last update.

QiitaAPIで記事取得/記事投稿

Last updated at Posted at 2021-04-14

目標

・記事情報を取得し、一覧表示する
・記事の投稿が可能

使用API

参照元:https://qiita.com/api/v2/docs

記事情報取得API

https://qiita.com/api/v2/users/*username*/items?

記事投稿API

https://qiita.com/api/v2/items?

実装方法

Qiitaの設定

・[設定]>[アプリケーション]>[個人用アクセストークン]>[新しくトークンを発行する]でトークンを作成しておく
(取得のためread_qiita、投稿のためwrite_qiitaを選択)

記事情報取得

通信はaxiosで実施

const qlist = await axios.get('https://qiita.com/api/v2/users/'+【ユーザー名】+'/items?',{
                 Authorization: 【作成したトークン】
            })

記事投稿

    fetchData() {
     //必要なパラメータをjsonで設定
     //オプションは多数のため、公式ドキュメント参照
      const item = {
          "body": 【投稿内容】,//マークダウン形式で記載が必要
          "coediting": false,//この記事が共同更新状態かどうか (Qiita Teamでのみ有効)
          "private": false//限定共有状態かどうかを表すフラグ (Qiita Teamでは無効)
          "tags": [
            {
              "name": "テスト投稿",//タグ:APIテスト時は投稿が無難
            }
          ],
          "title": 【記事タイトル】,
          "tweet": false//Twitterに投稿するかどうか (Twitter連携を有効化している場合のみ有効)
      }

      axios.post('https://qiita.com/api/v2/items?',item,{
        headers: {
          'Content-Type': 'application/json',
          'Authorization': 【作成したトークン】
        }
      }).then(()=>{
        //成功処理
      }).catch((error)=>{
        //失敗処理
      })

最後に

認証許可(GET /api/v2/oauth/authorize)周りも実装したかったが、
難航したため、調査中

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0