
我使用自定义授权标头签署我的http请求:
String key="clIEnt="+USER+",hash="+sha1(STR, API_KEY)+",timestamp="+t.toString();如果有人对sha1方法感兴趣:http://pastebin.com/HRFXQ4Bk密钥字符串用作标题:
URL url = new URL(sb.toString());httpURLConnection conn = null; conn = (httpURLConnection) url.openConnection();conn.setRequestProperty("Authorization", key);conn.setRequestMethod("GET");inputStreamReader in = new inputStreamReader(conn.getinputStream());当我尝试获得响应时,我得到以下错误:
10-28 18:25:40.111: E/error(6855): java.io.EOFException 10-28
18:25:40.111: E/error(6855): at
libcore.io.Streams.readAsciiline(Streams.java:203) 10-28 18:25:40.111:
E/error(6855): at
libcore.net.http.httpEngine.readResponseheaders(httpEngine.java:579)
10-28 18:25:40.111: E/error(6855): at
libcore.net.http.httpEngine.readResponse(httpEngine.java:827) 10-28
18:25:40.111: E/error(6855): at
libcore.net.http.httpURLConnectionImpl.getResponse(httpURLConnectionImpl.java:283)
10-28 18:25:40.111: E/error(6855): at
libcore.net.http.httpURLConnectionImpl.getinputStream(httpURLConnectionImpl.java:177)
在我的服务器上,此请求未记录任何访问权限.但是,当我删除auth标头时,根据服务器日志建立与我的服务器的连接.
那么auth头如何影响请求呢?使用标题时为什么没有连接?
BTW像一个标题
conn.setRequestProperty("Authorization", "FOObar");然而,由于授权标头与要求不匹配,因此被拒绝:
10-29 08:12:07.235: E/error(23663): java.net.ConnectException: Failed
to connect to API.myserver.net (port 1337):
connect Failed: ECONNREFUSED (Connection refused) 10-29 08:12:07.235:
E/error(23663): at libcore.io.IoBrIDge.connect(IoBrIDge.java:114)
10-29 08:12:07.235: E/error(23663): at
java.net.PlainSocketImpl.connect(PlainSocketImpl.java:192) 10-29
08:12:07.235: E/error(23663): at
java.net.PlainSocketImpl.connect(PlainSocketImpl.java:459)
我的webservice要求标题具有以下格式
match(/clIEnt=([^,]*),hash=([^,]*),timestamp=([^,]*)/);所以这个例外与最初的例外不同.当我删除标题并禁用我的webservice上的授权时,连接按预期工作.所以问题似乎与自定义授权标头有关.有任何想法吗?
解决方法:
根据此question,某些AndroID版本可能会出现问题.
尝试将conn.setRequestProperty(“Connection”,“close”)添加到您的请求中.
总结以上是内存溢出为你收集整理的java – 使用HttpURLConnection标头时的Android EOFException全部内容,希望文章能够帮你解决java – 使用HttpURLConnection标头时的Android EOFException所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)