如何使用 .NET Core 3.1 向 Maximo 7.6 进行身份验证?
How to authenticate to Maximo 7.6 with .NET Core 3.1?
我无法通过身份验证来获取 LtpaToken2 和 JSESSIONID。这是代码:
string url = "http://maximo.local/maximo/"; //http://maximo.local/maximo/j_security_check?j_username=admin&j_password=admin
string uri = "oslc/login";
using (HttpClient client = new HttpClient())
{
client.BaseAddress = new Uri(url);
string username = "admin";
string password = "admin";
client.DefaultRequestHeaders.Add($"Authorization", $"Basic {Base64Encode($"{username}:{password}")}");
string paramentros = "";
var response = client.PostAsync(uri, new StringContent(paramentros, Encoding.UTF8, "application/json")).Result;
if (response.IsSuccessStatusCode)
{
var jsonString = await response.Content.ReadAsStringAsync();
}
有什么问题吗?
您的 Maximo 是否存储用户名和密码?
Maximo 中的本机身份验证使用 header 通过其余 api 登录,但它不是您拥有的那样。
所以你想要 header maxauth 然后值是 base64 编码 userid:password.
我无法通过身份验证来获取 LtpaToken2 和 JSESSIONID。这是代码:
string url = "http://maximo.local/maximo/"; //http://maximo.local/maximo/j_security_check?j_username=admin&j_password=admin
string uri = "oslc/login";
using (HttpClient client = new HttpClient())
{
client.BaseAddress = new Uri(url);
string username = "admin";
string password = "admin";
client.DefaultRequestHeaders.Add($"Authorization", $"Basic {Base64Encode($"{username}:{password}")}");
string paramentros = "";
var response = client.PostAsync(uri, new StringContent(paramentros, Encoding.UTF8, "application/json")).Result;
if (response.IsSuccessStatusCode)
{
var jsonString = await response.Content.ReadAsStringAsync();
}
有什么问题吗?
您的 Maximo 是否存储用户名和密码?
Maximo 中的本机身份验证使用 header 通过其余 api 登录,但它不是您拥有的那样。
所以你想要 header maxauth 然后值是 base64 编码 userid:password.