我不知道如何在节点js中发送curl -u,我尝试了下面的代码,但没有成功。
request({
url: "https://preview.twilio.com/HostedNumbers/HostedNumberOrders",
method: "POST",
json: true,
headers: {
"content-type": "application/json",
"Authorization": accountSid + authToken
},
json: {
"PhoneNumber": payload.phonenumber, "SmsCapability": true, "IsoCountry": payload.isocountry,
"AddressSid": address.sid, "Email": payload.email,
"FriendlyName": payload.friendlyname, "StatusCallbackUrl": "http://example.com/callback",
"StatusCallbackMethod": "POST",
},
}, function (error, response, body) {
res.json({ 'error': error, 'data': response, 'body': body });
return true;
})
这就是我想叫的卷发。
curl -XPOST https://preview.twilio.com/HostedNumbers/HostedNumberOrders \
-d "PhoneNumber=+18312011484" \
-d "SmsCapability=true" \
-d "IsoCountry=US" \
-d "AddressSid=ADXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" \
-d "Email=hostedsms@twilio.com" \
-d "FriendlyName=HostedNumberOrder1" \
-d "StatusCallbackUrl=http://example.com/callback" \
-d "StatusCallbackMethod=POST" \
-u 'ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX:your_auth_token'
发布于 2017-07-26 21:58:55
Twilio api
Twilio支持HTTP基本和摘要身份验证。这允许您在web服务器上保护您的TwiML URL,以便只有您和Twilio可以访问它们。
请参阅:文档
请求: http身份验证
摘要身份验证是受支持的,但它只适用于设置为false的sendImmediately;否则请求将在初始请求上发送基本身份验证,这可能会导致请求失败。
请参阅:文档
var options = {
url: 'https://preview.twilio.com/HostedNumbers/HostedNumberOrders',
auth: {
user: username,
password: password,
sendImmediately: true
}
}
request(options, function (err, res, body) {
if (err) {
console.dir(err)
return
}
console.dir('headers', res.headers)
console.dir('status code', res.statusCode)
console.dir(body)
})
请注意,还可以使用URL本身指定基本身份验证,详见RFC 1738。只需在主机前传递用户:密码,并使用@标志:
var username = 'username',
password = 'password',
url = 'http://' + username + ':' + password + '@some.server.com';
request({url: url}, function (error, response, body) {
// Do more stuff with 'body' here
});
https://stackoverflow.com/questions/45341870
复制相似问题