GROWIでapiを叩く

サイト名URL
Postmanhttps://www.postman.com/ external_link
GROWIの api ドキュメントhttps://docs.growi.org/en/api/rest-v3.html external_link

Postman を用意する。

スクリーンショット 2020-02-20 0.25.39.png

GROWI では API token を用いて認証を行なっているためユーザー設定から API token を取得する。
request body にセットすれば叩ける

スクリーンショット 2020-02-20 0.29.22.png

ちなみに内部では以下のように記述されている

access-token-parser.js
module.exports = (crowi) => { return async(req, res, next) => { // TODO: comply HTTP header of RFC6750 / Authorization: Bearer const accessToken = req.query.access_token || req.body.access_token || null; if (!accessToken) { return next(); } const User = crowi.model('User'); logger.debug('accessToken is', accessToken); const user = await User.findUserByApiToken(accessToken); req.user = user; req.skipCsrfVerify = true; logger.debug('Access token parsed: skipCsrfVerify'); next(); }; };

クエリパラメータもチェックしているようなので http://localhost:3000/_api/users.list?access_token={{my_api_token}} でもうまくいく。
ここで user データも取得しているため後続に続く login 判定や admin 判定も正常に行われる。

関連ページ

/開発日記/動作確認用にページをたくさん作りたい