gpt4 book ai didi

navision web服务的android消费

转载 作者:太空狗 更新时间:2023-10-29 13:31:42 25 4
gpt4 key购买 nike

我需要使用来自 android 的 NAV 网络服务。我得到了带有“Upper”功能的“Letters”代码单元。

我在我的 PC 上设置了 NAV Web 服务(NTLM 身份验证)并关闭了防火墙(这样该服务在我网络中的其他设备上可见)。输入登录/密码(我的 PC 帐户)后,可以在浏览器(也在 adroid 设备上)中访问该服务。如果我使用 this code它在“调用”时崩溃,END_DOCUMENT 为空异常...是因为认证吗?

如果我使用这段代码连接

HttpGet request = new
HttpGet("http://[myPC'sIP]:7047/DynamicsNAV/WS/SystemService");
HttpResponse response = client.execute(request);

我收到 401 错误,但只是指定了 IP

HttpGet request = new HttpGet("http://[myPC'sIP]");
HttpResponse response = client.execute(request);

返回代码 200(正常)如何发送凭据?我尝试了几种方法,但结果总是一样的......您有处理过这个问题的经验吗?

最佳答案

我使用 soap_action 来做同样的事情,它的工作就像魅力一样,看看下面的代码是否对你有帮助:

String namespace = "urn:microsoft-dynamics-schemas/codeunit/NavisionWS";
String url = "http://IP:7047/DynamicsNAV/WS/Codeunit/NavisionWS";
String soap_action = "urn:microsoft-dynamics-schemas/codeunit/NavisionWS:GetLoginInfo";
String method_name = "GetLoginInfo";
try
{
SoapObject request = new SoapObject(namespace, method_name);
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);

envelope.dotNet = true;
envelope.setOutputSoapObject(request);
HttpTransportSE transport = new HttpTransportSE(url);
transport.call(soap_action, envelope); // Receive Error here!
SoapObject result = (SoapObject) envelope.getResponse();
great = result.toString();
}
catch (Exception e)
{
e.printStackTrace();
great = e.toString();
Toast.makeText(this, great, Toast.LENGTH_LONG).show();
}

关于navision web服务的android消费,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15071066/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com