首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法从Betfair WebAPI c#检索会话密钥

无法从Betfair WebAPI c#检索会话密钥
EN

Stack Overflow用户
提问于 2017-04-24 20:35:15
回答 2查看 538关注 0票数 4

我一直在尝试登录到一个在这些步骤之后并使用这个源代码的Betfair帐户。这很好,并且返回了一个会话密钥,但是如果我试图重复在另一个项目中获取会话密钥的步骤,我会收到一个"CERT_AUTH_REQUIRED“错误,这意味着我在请求中发送的客户端证书有问题。

更奇怪的是,如果我创建了另一个引用正在工作的Betfair项目的项目,并使这个新项目简单地在Betfair项目中运行Program.Main方法,那么我将再次得到"CERT_AUTH_REQUIRED“消息?

当Betfair应用程序是解决方案的启动项目时,它可以工作,但是如果我将启动betfair应用程序的第二个项目设置为启动项目,它不会返回一个成功的响应(尽管代码运行良好,并且执行了所有相同的步骤,但失败的只是web响应)。

有人知道为什么会这样吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-04-25 08:23:56

我设法让这段代码适用于非交互式日志。不过,我确实做了些改变。这听起来有些耳熟,因为我记得有那个错误。

代码语言:javascript
复制
    private WebRequestHandler getWebRequestHandlerWithCert(string certFilename)
    {
        var cert = new X509Certificate2(certFilename, "", X509KeyStorageFlags.MachineKeySet | X509KeyStorageFlags.PersistKeySet | X509KeyStorageFlags.Exportable);
        var clientHandler = new WebRequestHandler();
        clientHandler.ClientCertificates.Add(cert);
        return clientHandler;
    }
票数 2
EN

Stack Overflow用户

发布于 2018-08-16 07:57:48

我刚才发现的另一件事可能会导致同样的错误,如果您在下面的步骤中输入导出密码。这可能在您创建密钥后发生了变化,因为它将其标记为可导出的,因此我不需要在代码中添加X509KeyStorageFlags.Exportable

代码语言:javascript
复制
openssl pkcs12 -export -in client-2048.crt -inkey client-2048.key -out client-2048.p12

我认为导出密码是示例应用程序所提示的,但并不是这样,所以导出密码应该保留为空白。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43597251

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档