我试图通过我的代码调用SAP Hana服务层,但我遇到了以下错误:所以任何人都可以帮助我 .
Error 1st : AuthenticationException:根据验证过程,远程证书无效 .
Error 2nd : WebException:基础连接已关闭:无法为SSL / TLS安全通道 Build 信任关系 .
Error 3rd : HttpRequestException:发送请求时发生错误 .
Some more details about the App - 我在.net中创建了控制台应用程序及其在服务器上的执行[Hana Server在本地访问,因为服务器都在LAN中] Linux和Windows Server .
One more thing - 我的客户不打算为SAP Hana服务层购买域名和SSL证书,因为我的应用程序会在内部使用它 .
问题是,当我通过Postman测试登录服务时它的工作正常并且我也得到了会话详细信息,但同样的URL不能通过我的代码工作,所以我还需要做什么才能访问该服务?
网址 - https://172.17.100.35:50000/b1s/v1/Login
using (var client = new HttpClient())
{
var credentials = new { UserName = "admin", Password = "", "" };
var json = JsonConvert.SerializeObject(credentials);
var response = client.PostAsync(url),
new StringContent(json, Encoding.UTF8, "application/json")).Result;
if (response.IsSuccessStatusCode)
{
dynamic content = JsonConvert.DeserializeObject(response.Content.ReadAsStringAsync().Result);
// Access variables from the returned JSON object
var appHref = content.links.applications.href;
}
}
3 回答
如果您使用自签名证书,则必须先接受它们 . 这可以通过浏览器将其添加到Windows证书来完成!如果要进行跨域调用,则需要更改b1s.config
在 生产环境 模式中注意使用* < - <<< -
您需要在 postAsync 之前输入此代码
这样可以避免证书的验证 .
对于未来的googlers在将您的请求发送到Login endpoints 后获得500错误响应,请禁用ExpectContinue .