PayPal Get Access Token vb.net请求被中止:无法创建SSL/TLS安全通道
关于调用PayPal的授权访问令牌API,我有几个问题,下面是我的代码:PayPal Get Access Token vb.net请求被中止:无法创建SSL/TLS安全通道,vb.net,ssl,paypal-sandbox,Vb.net,Ssl,Paypal Sandbox,关于调用PayPal的授权访问令牌API,我有几个问题,下面是我的代码: Public Function testAPI() As String Dim data As StringBuilder Dim byteData() As Byte Dim request As HttpWebRequest Dim response As HttpWebResponse = Nothing Dim postStream As Stream = Nothing
Public Function testAPI() As String
Dim data As StringBuilder
Dim byteData() As Byte
Dim request As HttpWebRequest
Dim response As HttpWebResponse = Nothing
Dim postStream As Stream = Nothing
Dim reader As StreamReader
Dim Result As String = ""
request = DirectCast(WebRequest.Create("https://api.sandbox.paypal.com/v1/oauth2/token"), HttpWebRequest)
request.Headers.Add("Username", "XXXXXXXXXX")
request.Headers.Add("Password", "XXXXXXXXXX")
data = New StringBuilder("{""grant_type"":""client_credentials""}")
request.ContentType = "application/x-www-form-urlencoded"
request.Method = WebRequestMethods.Http.Post
byteData = UTF8Encoding.UTF8.GetBytes(data.ToString())
request.ContentLength = byteData.Length
postStream = request.GetRequestStream()
postStream.Write(byteData, 0, byteData.Length)
If Not postStream Is Nothing Then postStream.Close()
response = DirectCast(request.GetResponse(), HttpWebResponse)
reader = New StreamReader(response.GetResponseStream())
Result = reader.ReadToEnd().ToString
Return Result
End Function
ServicePointManager.Expect100Continue = True
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12
request.ProtocolVersion = HttpVersion.Version11
但它仍然失败并返回相同的错误消息。请帮助。我不熟悉PayPal API,但只是尝试一下,如果您这样做会发生什么:
ServicePointManager.SecurityProtocol=SecurityProtocolType.Tls或SecurityProtocolType.Tls11或SecurityProtocolType.Tls12
?另外,我假设您在调用WebRequest.Create()
之前设置了这些值?如果仍然不起作用,您可能还想尝试在他们的问题追踪器上发布:哦,是的!非常感谢。我没有将这些代码放在WebRequest.Create之前。但现在我遇到了另一个错误,即401未经授权,因此我认为我的用户名和密码或授权类型没有正确通过。