W3C验证器返回HTTP 500,尽管它在浏览器中工作

时间:2012-04-10 18:55:07

标签: java android http w3c-validation

我尝试了以下网址:

http://validator.w3.org/mobile/check?docAddr=mobisoft.net.pl&output=unicorn

在桌面firefox或Chrome浏览器中,一切正常。它返回有效的XML响应。

之后我创建了Android应用程序,它连接到W3C以获得验证结果。代码如下:

Url url = new URL("http://validator.w3.org/mobile/check?docAddr=mobisoft.net.pl&output=unicorn"); 
URLConnection connection = url.openConnection();
HttpURLConnection httpConnection = (HttpURLConnection) connection;

int responseCode = httpConnection.getResponseCode();

我总是得到HTTP状态代码500 INTERNAL SERVER PROBLEM,尽管事实上它在桌面浏览器上执行相同的URL时工作正常。其他网站也存在同样的问题。

你有什么想法,为什么它在我的Android应用程序中不起作用?

1 个答案:

答案 0 :(得分:1)

尝试添加HTTP“User-Agent”标头,这可能就是问题所在。否则,我建议使用现有的开源Java库,代表您进行此验证(通过W3C):rexsl-w3c

编辑:使用“application / soap + xml”值添加“Accept”HTTP标头,将正常工作。