【发布时间】:2018-05-30 02:09:48
【问题描述】:
我尝试向https://c-cex.com/t/prices.json发送一个简单的请求
如果我在浏览器中使用此 url,则会显示正确的响应,但如果我使用 RestRequest 发出相同的请求,我会一直收到 403 错误 Forbidden。我尝试 HttpClient,WebRequest 我得到同样的错误
我将标头与用户代理放在一起,没有缓存和许多其他值,但没有工作
对这个问题有什么想法吗?
Dim url As String = "https://c-cex.com/t/prices.json"
Dim client As New RestSharp.RestClient(url)
Dim request = New RestRequest(url, Method.GET)
Dim response = client.Execute(request)
使用 apisign 请求更新代码
Dim nonce As String = CInt((DateTime.UtcNow - New DateTime(1970, 1, 1)).TotalSeconds).ToString
Dim url As String = "https://c-cex.com/t/api.html?a=getbalance¤cy=BTC&apikey=" & API_KEY & "&nonce=" & nonce
Dim keybytes() = UnicodeEncoding.ASCII.GetBytes(API_SECRET)
Dim hs As System.Security.Cryptography.HMACSHA512 = New System.Security.Cryptography.HMACSHA512(keybytes)
Dim urlbytes() = UnicodeEncoding.ASCII.GetBytes(url)
Dim sh() = hs.ComputeHash(urlbytes)
Dim client As New RestSharp.RestClient(url)
Dim request = New RestRequest(url, Method.GET)
request.AddHeader("Cache-Control", "no-cache")
request.AddHeader("apisign", HttpUtility.UrlEncode(ToHexString(sh)))
Dim response = client.Execute(request)
【问题讨论】: