[英]java http get “request reject” but work in browser
我正在尝试使用Web服务。 响应为“请求被拒绝。请求的URL被拒绝。请咨询您的管理员。您的支持ID是:11127005317486483617”
这是我的代码:
import java.io.BufferedReader;<br/>
import java.io.IOException;<br/>
import java.io.InputStreamReader;<br/>
import java.io.StringReader;<br/>
import java.net.HttpURLConnection;<br/>
import java.net.MalformedURLException;<br/>
import java.net.URL;<br/>
import java.util.*;<br/>
import java.io.FileNotFoundException;<br/>
import java.io.FileReader;<br/>
import java.io.IOException;<br/>
import org.json.JSONArray;<br/>
import org.json.JSONException;<br/>
import java.util.Iterator;<br/>
import org.json.JSONObject;<br/>
import org.json.simple.parser.JSONParser;<br/>
import org.json.simple.parser.ParseException;<br/>
public class Testapp {<br/>
public static void main(String[] args) throws JSONException, ParseException {<br/>
String output = "abc";<br/>
try {<br/>
URL url = new URL("https://peps.cnes.fr/resto/api/collections/S1/search.json?q=france&maxRecords=100&startDate=2014-12-31T05:00:00&completionDate=2014-12-31T12:00:00");<br/>
HttpURLConnection conn = (HttpURLConnection) url.openConnection();<br/>
conn.setRequestMethod("GET");<br/>
conn.setRequestProperty("Accept", "application/json");<br/>
if (conn.getResponseCode() != 200) {<br/>
throw new RuntimeException("Failed : HTTP error code : "<br/>
+ conn.getResponseCode());<br/>
}<br/>
BufferedReader br = new BufferedReader(new InputStreamReader((conn.getInputStream())));<br/>
//String output;<br/>
System.out.println("Output from Server .... \n");<br/>
while ((output = br.readLine()) != null) {<br/>
System.out.println(output);<br/>
}<br/>
conn.disconnect();<br/>
} catch (MalformedURLException e) {<br/>
e.printStackTrace();<br/>
} catch (IOException e) {<br/>
e.printStackTrace();<br/>
}<br/>
}<br/>
}<br/>
但是,这个网址在浏览器中运行良好。 来人帮帮我?
许多网站需要User-Agent
标头才能正常工作。 所以加
conn.setRequestProperty("User-Agent", "Mozilla/5.0");
使这项工作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.