【发布时间】:2019-07-01 11:45:58
【问题描述】:
我需要使用 Swagger 发送电子邮件的 API,但我在授权方面遇到问题我通过了令牌,但结果仍然是未经授权的。
我使用下面的代码。
`Dim url = "test123/test.com" (can't include the actual)
Dim apiKey = "12312"
Dim apiPassword = "12312"
Dim client = New RestClient(url)
Dim request = New RestRequest("token", Method.POST)
request.Parameters.Clear()
request.AddParameter("grant_type", "password")
request.AddParameter("username", apiKey)
request.AddParameter("password", apiPassword)
Dim response As IRestResponse = client.Execute(request)
_pristrKey = response.Content
Return JsonConvert.DeserializeObject(response.Content)`
现在我在 _pristrKey 中有 Token
然后我这样做是为了发送电子邮件。
`Dim url = "test123/test.com"
Dim client = New RestClient(url)
Dim request = New RestRequest("api/email", Method.POST)
request.Parameters.Clear()
request.AddHeader("accept", "application/json")
request.AddParameter("Authorization", String.Format($"Bearer " +
_pristrKey), ParameterType.HttpHeader)
request.AddHeader("Content-Type", "application/json")
Dim apiInput = New With {Key .bulkId = "123", Key .from =
"test123@gmail.com", Key .subject = "Test", Key .text = "Test123", Key
.to = "test321@gmail.com"}
request.AddParameter("application/json",
JsonConvert.SerializeObject(apiInput), ParameterType.RequestBody)
request.RequestFormat = DataFormat.Json
Dim response As IRestResponse = client.Execute(request)`
实际输出:response = "StatusCode: Unauthorized, Content-Type: , Content-Length: 0)"
【问题讨论】:
-
您可能需要与您正在调用的 API 的供应商/开发人员一起解决此问题。
-
我现在得到了这个。 {WWW-Authenticate=Bearer error="invalid_token"}
标签: vb.net api post swagger restsharp