Java URLConnection未检索头
我试图在Matlab中使用Web服务,但我有一个问题 Web服务发送一个cookie进行身份验证,matlab会忽略该cookie。 matlab函数callSoapService使用以下java代码:Java URLConnection未检索头,java,matlab,soap,Java,Matlab,Soap,我试图在Matlab中使用Web服务,但我有一个问题 Web服务发送一个cookie进行身份验证,matlab会忽略该cookie。 matlab函数callSoapService使用以下java代码: url = URL(endpoint); if isempty(proxy) httpConn = url.openConnection; else httpConn = url.openConnection(proxy); end httpConn.setRequestProp
url = URL(endpoint);
if isempty(proxy)
httpConn = url.openConnection;
else
httpConn = url.openConnection(proxy);
end
httpConn.setRequestProperty('Content-Type','text/xml; charset=utf-8');
httpConn.setRequestProperty('SOAPAction',soapAction);
httpConn.setRequestMethod('POST');
httpConn.setDoOutput(true);
httpConn.setDoInput(true);
outputStream = httpConn.getOutputStream;
outputStream.write(b);
outputStream.close;
inputStream = httpConn.getInputStream;
byteArrayOutputStream = java.io.ByteArrayOutputStream;
isc = InterruptibleStreamCopier.getInterruptibleStreamCopier;
isc.copyStream(inputStream,byteArrayOutputStream);
inputStream.close;
byteArrayOutputStream.close;
resp = byteArrayOutputStream.toString('UTF-8');
如果我写入httpConn.getHeaderFields(),它将返回一个空列表,而不是带有cookie的标题。有什么想法吗?
在java文档中,它说您应该调用httpConn.connect(),而Matlab没有这样做,我在代码中的某个地方添加了这一行只是为了尝试,但它不起作用。lol我找到了解决方案
ASP.NET未发送cookie,因为java用户代理Mozilla/5.0(java 1.6.0_17;Windows 7 6.1 amd64;en_US)ICEbrowser/v6_0_2的浏览器功能对象在cookie字段中返回false
我创建了一个新的java.browser文件,并将其放在App_Browsers目录中。我重新部署了应用程序,它成功了!Net将cookie发送到Matlab
接下来我要做的是修改MatlabSOAP函数,使其每次都能接收并重新发送cookie。我将解决方案张贴在
我向matlab报告了这个问题: