繁体   English   中英

BitStamp API帖子上禁止使用C#HttpWebRequest 403

[英]C# HttpWebRequest 403 Forbidden on BitStamp API Post

我正在使用BitStamp进行比特币交易,并且试图使用API​​检查我的余额。

当我使用Postman在未经身份验证的情况下使用带有格式数据或x-www-form-urlencoded的Postman测试API时,两者都可以正常工作。 即使只是通过浏览器发布,它也可以完美运行:

<html>
    <head><title>Test</title></head>
    <body>
        <form action="https://www.bitstamp.net/api/v2/balance/btcusd/" method="post">
            <input type="text" name="key" value="SomeKey" />
            <input type="text" name="signature" value="SomeSignature" />
            <input type="text" name="nonce" value="123456789" />
            <input type="submit" value="Test" />
        </form>
    </body>
</html>

但是用HttpWebRequest做到这一点我一直收到403 Forbidden错误

try
{
    HttpWebRequest getApiRequest = (HttpWebRequest)HttpWebRequest.Create("https://www.bitstamp.net/api/v2/balance/btcusd/");

    getApiRequest.Method = "POST";

    ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;

    getApiRequest.ContentType = "application/x-www-form-urlencoded;";
    string FormData = "key=SomeKey&signature=SomeSignature&nonce=123456789"
    StreamWriter formWrite = new StreamWriter(getApiRequest.GetRequestStream());
    formWrite.Write(FormData);
    formWrite.Flush();
    formWrite.Close();

    StreamReader resultReader = new StreamReader(getApiRequest.GetResponse().GetResponseStream());
    string result = resultReader.ReadToEnd();
    resultReader.Close();
    return result;
 }
 catch (Exception e)
 {
    return e.Message;
 }

我看过《提琴手》中的帖子,但在大多数情况下看起来都是一样的。 但是,坦率地说,我不确定我是否正确使用了Fiddler。 我尝试了Content-Type“ multipart / form-data;” 用正确的边框和所有内容正确书写FormData,没有运气。 我尝试设置用户代理,仍然没有运气。 我想念什么?

我发现即使抛出异常,即使是网络异常,我仍然可以得到响应。

catch (WebException we)
 {
    StreamReader resultReader = new StreamReader(we.Response.GetResponseStream());
    string result = resultReader.ReadToEnd();
    resultReader.Close();
    return result;
 }
 catch (Exception e)
 {
    return e.Message;
 }

从响应中我看到我使用的随机数是我以前使用过的随机数,因此是错误。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM