

APIで得た結果を元にAPIを叩く…といった作業を行いたいのですが、  
requestモジュールを使用する際には、function内に続けて書く方法しかないのでしょうか。（矢印の位置）

[code]

    request.get({
        uri: URL,
        headers: {'Content-type': 'application/json'},
        qs: {
            // GETのURLの後に付く
            // ?hoge=hugaの部分
        },
        json: true
    }, function(err, req, data){
        console.log(data);　←
    });
    
[/code]

コード引用：<https://qiita.com/yuta0801/items/ff7f314f45c4f8dc8a48>  
複数回APIを使った結果を使用してAPIを叩きたいため、できれば結果であるdata部分を外に出したいです。  
result = request.get としてみましたが、リクエストの情報しか取得できませんでした。  
ご享受お願い致します。


CC BY-SA 4.0
2020-06-03T03:22:54.903
67246
2022-01-26T13:09:10.993
40452
question
node.js api
Node.jsにてrequestでGETした値を戻り値として返す関数を作成したい


コールバックの代わりに`Promise`を使う方法が[READMEで紹介されています。](https://github.com/request/request#promises
--asyncawait)方法としてはラッパーライブラリを使う方法とNode.jsの`promisify`を使う方法の２パターン存在します。

例えば`request-promise-native`を使うと次のように書けます。

[code]

    const request = require("request-promise-native");
    
    (async function () {
        try {
            const data = await request.get("https://www.example.com");
            console.log(data);
        } catch (err) {
            // エラー処理
        }
    })();
    
[/code]


CC BY-SA 4.0
2020-06-03T12:52:47.587
67259
2020-06-03T12:52:47.587
13199
67246
answer