小编oja*_*eir的帖子

Nodejs HTTP.get() 添加用户代理

我正在制作一个 API,在其中调用 GET 到 musicBrainz API。我使用 Node.js 和 Express。

我的请求被拒绝,因为它们缺少用户代理(这是根据他们的规则: https: //musicbrainz.org/doc/XML_Web_Service/Rate_Limiting

我的代码:


const https = require('https');

    var callmbapi = function(mbid, callback, res) {
    var artistdata = '';
    const mburl = 'https://musicbrainz.org/ws/2/artist/';
    https.get(mburl + mbid + '?inc=release-groups&fmt=json', (resp) => {

        // A chunk of data has been recieved.
         resp.on('data', (chunk) => {
           artistdata += chunk;
        });
        resp.on('end', function () {
            console.log(artistdata);
        });

        }).on("error", (err) => {
            console.log("Error: " + err.message);
    });
};
Run Code Online (Sandbox Code Playgroud)

在我达到没有用户代理的请求限制之前,该请求有效。

我在某处读到我应该有随请求一起发送的选项,并且也尝试过:


const https = …
Run Code Online (Sandbox Code Playgroud)

javascript node.js express

4
推荐指数
1
解决办法
3892
查看次数

标签 统计

express ×1

javascript ×1

node.js ×1