无法通过向 mailgun 发送 ajax 请求的身份验证
Cannot pass authentication sending ajax request to mailgun
我能做到:
curl --user 'api:MYAPIKEY' -F from=foo@bar.it -F to=MYEMAIL@gmail.com -F subject='foo' -F text='bar' https://api.mailgun.net/v3/sandbox93d8299f673a4c3295b7592956cb3d9.mailgun.org/messages
但是当我尝试使用 jquery .ajax() 方法执行相同的请求时,我收到一个登录弹出窗口:
$.ajax({
headers: {"Authorization": "Basic api:key-b50a9065a7b9bdf464f3d7a418ca96bb"},
// url: "././mail/contact_me.php",
url: "https://api.mailgun.net/v3/sandbox93d8299f673a4c32952b7592956cb3d9.mailgun.org/messages",
type: "POST",
dataType: 'json',
data: {
name: name,
phone: phone,
email: email,
message: message
},
// cache: false,
success: function() {
alert('ok');
},
error: function() {
alert('problems');
}
}
服务器响应 401。知道为什么吗?
谢谢
尝试使用 username
和 password
字段
$.ajax({
url: "https://api.mailgun.net/v3/sandbox93d8299f673a4c32952b7592956cb3d9.mailgun.org/messages",
type: "POST",
dataType: 'json',
username:'api',
password: 'key-b50a9065a7b9bdf464f3d7a418ca96bb',
...
如果您要自己设置 header,则必须对其进行 base64 编码
headers: {"Authorization": "Basic "+btoa("api:key-b50a9065a7b9bdf464f3d7a418ca96bb")},
我能做到:
curl --user 'api:MYAPIKEY' -F from=foo@bar.it -F to=MYEMAIL@gmail.com -F subject='foo' -F text='bar' https://api.mailgun.net/v3/sandbox93d8299f673a4c3295b7592956cb3d9.mailgun.org/messages
但是当我尝试使用 jquery .ajax() 方法执行相同的请求时,我收到一个登录弹出窗口:
$.ajax({
headers: {"Authorization": "Basic api:key-b50a9065a7b9bdf464f3d7a418ca96bb"},
// url: "././mail/contact_me.php",
url: "https://api.mailgun.net/v3/sandbox93d8299f673a4c32952b7592956cb3d9.mailgun.org/messages",
type: "POST",
dataType: 'json',
data: {
name: name,
phone: phone,
email: email,
message: message
},
// cache: false,
success: function() {
alert('ok');
},
error: function() {
alert('problems');
}
}
服务器响应 401。知道为什么吗?
谢谢
尝试使用 username
和 password
字段
$.ajax({
url: "https://api.mailgun.net/v3/sandbox93d8299f673a4c32952b7592956cb3d9.mailgun.org/messages",
type: "POST",
dataType: 'json',
username:'api',
password: 'key-b50a9065a7b9bdf464f3d7a418ca96bb',
...
如果您要自己设置 header,则必须对其进行 base64 编码
headers: {"Authorization": "Basic "+btoa("api:key-b50a9065a7b9bdf464f3d7a418ca96bb")},