我已经阅读了很多问题,并尝试了几种不同的方法,所以也许我的API服务与众不同。但这是我的第一次,我无法使其正常工作,所以我想在这里发帖,看看是否有人可以教育我。
我的代码导致响应错误400-错误的请求(为安全起见,API和其他详细信息已更改)
Dim httpWebRequest = DirectCast(WebRequest.Create("https://api.smtp2go.com/v3/users/smtp/add"), HttpWebRequest)
httpWebRequest.ContentType = "application/json"
httpWebRequest.Method = "POST"
Using streamWriter = New StreamWriter(httpWebRequest.GetRequestStream())
Dim json As String = "{'api_key': ""api-123456123456123456123456"", 'username': ""user@domain.com"", 'description': ""Generated via API"" }"
streamWriter.Write(json)
streamWriter.Close()
End Using
Dim httpResponse = DirectCast(httpWebRequest.GetResponse(), HttpWebResponse)
Using streamReader = New StreamReader(httpResponse.GetResponseStream())
Dim result = streamReader.ReadToEnd()
End Using
他们的JavaScript示例
var url = "https://api.smtp2go.com/v3/users/smtp/add";
$.ajax({
url: url,
method: 'POST',
headers: {
'Content-Type': "application/json"
},
data: JSON.stringify({
'api_key': "api-123456123456123456123456",
'username': "user@domain.com",
'description': "Generated via API"
}),
}).done(function(result) {
console.log(result);
}).fail(function(err) {
throw err;
});
他们的PHP示例
$curl = curl_init();
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_HTTPHEADER, array(
"Content-Type: application/json"
));
curl_setopt($curl, CURLOPT_URL,
"https://api.smtp2go.com/v3/users/smtp/add"
);
curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode(array(
"api_key" => "api-123456123456123456123456",
"username" => "user@domain.com",
"description" => "Generated via API"
)));
$result = curl_exec($curl);
echo $result;