現在、ノードを使用してCURLリクエストを作成しようとしています。PHP CURLをNPM CURLに変換する
私はPHPで以下のCURLの要求を持っている: -
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://www.website.com');
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'GET');
curl_setopt($ch, CURLOPT_POSTFIELDS, '');
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Authorization: token XXX',
'Content-Type: application/json'
));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$output = curl_exec($ch);
curl_close($ch);
私はノードで同じCURLの要求を実行する必要があります。 私は多くの異なるNPMパッケージを試して、curljsに解決しました。
私は、次のコードを持っている: - 私はエラーなしでサーバーからの応答を取得することができていますが、それはすべてのデータを返していない
var curl = require("curljs");
var curlOpts = curl.opts.connect_timeout(10);
curl("https://www.website.com -H Authorization: token XXX -H Content-Type: application/json --get", curlOpts, function(err, data, stderr) {
console.log(err);
console.log(data);
console.log(stderr);
});
を。 は、私は、次の応答を取得: -
null
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
誰もが正しい方向にプッシュして助けることができるだろうか?
ご協力いただければ幸いです。別のノートで
: - 私もここでrequest
を使用しようとしました
は私のコードです: -
var request = require('request');
var options = {
url: 'https://www.website.com',
headers: {
'Authorization': 'token XXX',
'Content-Type': 'application/json'
}
};
function callback(error, response, body) {
if (!error && response.statusCode == 200) {
var info = JSON.parse(body);
console.log(info);
} else {
console.log(body);
}
}
request.get(options, callback);
しかし、それはエラーを返す続けます。またnode-fetchを使用して
は同じエラーを返します: -
fetch("https://www.website.com", {
method: "GET",
headers: {
Authorization: "token XXX",
"Content-Type": "application/json"
}
}).then(function(response) {
return response;
}).then(function(response) {
console.log(response);
});
PHPのバージョンは完璧に動作し、私は正しくヘッダを設定していないのですか?
PHPからNodeに移動しました。 Nodeについての最も良いことの1つは、HTTP要求を行う能力です。 CURLを使用する必要がありますか?私はあなたの仕事がRequestJSのような図書館でうまくいくと思っています。もう一度curl_setoptを実行することは決してありません:) –
APIリクエストからJSONを返そうとしています。 RequestJSを使用してサンプルを提供できますか? 私はcurljsを使用するように設定されていませんが、私が見つけることができるパッケージの中で最高のようです。 –
JSONを取得する方法はたくさんあります。私のお気に入りはフェッチです。ブラウザのように使いましょう。 npmはnode-fetchをインストールします。それから 'fetch( 'http://www.website.com').then(res => res.json())。then(res => //何かをする)'。承認ヘッダーが必要な場合は、それも実行できます。 RequestJSもそれを行うことができます。あなたの好みにちょうど依存します。私は両方を使用しました。 –