nodejs request의 저렴한 의자
9853 단어 Node.js
무엇이 request입니까?
형식
request(options, function (error, response, body) {
// リクエスト結果の処理
});
다른 형식도 있지만 옵션이 바꿀 수 있는 형식을 좋아합니다http 요청 모듈을 제출합니다.
"options"설정은 각종 요청을 제출합니다.
공식.← 에 얼마나 빠졌는지 몰라요
끼워넣는 것이 깊어지는 것을 좋아하지 않기 때문에 항상promise.이것도 겸사겸사 싸구려 의자예요.
function httpRequest(options) {
return new Promise((resolve, reject) => {
request(options, function (error, response, body) {
let ret = {
headers: response.headers,
body: body,
error: error,
href: response.request.uri.href, // promise.all したときリクエスト元を特定するために設定
status: response.statusCode,
}
if (error) {
reject(ret);
} else {
resolve(ret);
}
});
});
}
Promise.resolve()
.then(function(value) {
var header = {
}
var data = {
}
var options = {
}
return httpRequest(options); // リクエスト1回目
})
.then(function(value){
// リクエスト結果の処理
return httpRequest(options); // リクエスト2回目
})
.then(function(value){
// リクエスト結果の処理
})
.catch(function(reason) {
// エラー、rejectしたときの処理
});
합판
process.env["NODE_TLS_REJECT_UNAUTHORIZED"] = 0; // オレオレ証明書ドメインへリクエストするとき。curl の --insecure と同じ
var jar = request.jar(); // cookieを使うとき
var header = {
// 'Content-type': 'application/x-www-form-urlencoded', // form のときつけてくれる
// 'Content-type': 'application/json', // jsonのときつけてくれる
Authorization: 'Bearer beabea', // Basic 認証はここに書いてはいけない
}
var data = {
honya: 'honya data',
}
var options = {
url: 'http://example.com',
method: 'GET',
headers: header,
followAllRedirects: true, // 3xxが返ってきたとき、リダイレクトする。
jar: jar, // cookieを使うとき
auth: [ // Basic認証するとき
user: 'username',
password: 'password',
],
qs: data, // GET のとき query stringをurlにつけてくれる
form: data, // form-urlencoded で送るとき。Content-type ヘッダもつけてくれる
json: data, // jsonで送るとき。Content-type ヘッダもつけてくれる
proxy: 'http://userid:[email protected]:8080/', // proxyがあるとき
}
빠져들 때마다 추가.번거로울 때 기능 찾기
귀찮을 때 엉망진창으로 쓰지 말고 기능을 찾아라
지금까지의 미련
request-promise
리퀘스트-promise를 사용해 보았을 때 바디 이외에는 돌려주지 않으며 4xxcatch는 사용하기 어렵습니다.
axios
인증서 영역에 요청할 때 설정이 잘못되었습니다.
process.env["NODE_TLS_REJECT_UNAUTHORIZED"] = 0
인증서를 검증하지 않기 위해서는 기록을 완전히 바꿔야 한다.
Reference
이 문제에 관하여(nodejs request의 저렴한 의자), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/ctrlzr/items/12c047456f6d469de45f텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)