java - 使用带有标头的 HttpURLConnection GET 请求时如何修复错误代码 500?标头未发送
问题描述
我正在尝试发送带有标头的 GET 请求,但标头未发送,并且我收到错误代码 500。 ttps://skyscanner-skyscanner-flight-search-v1.p.rapidapi.com/apiservices/browsequotes /v1.0/US/USD/en-US/SFO-sky/JFK-sky/2019-09-01。
我尝试了几种变体,例如折旧的 apache、HttpURLConnection 和 volley。我总是得到错误代码 500。我在清单中添加了权限。我在 Postman 上测试了 API GET 请求,它工作正常,你可以在这里看到:http: //prntscr.com/n2tv2e
public void buttonHandler(View v)
{
try {
URL url = new URL("https://skyscanner-skyscanner-flight-search-v1.p.rapidapi.com/apiservices/browsequotes/v1.0/US/USD/en-US/SFO-sky/JFK-sky/2019-09-01");
HttpsURLConnection con = (HttpsURLConnection) url.openConnection();
con.setRequestProperty("X-RapidAPI-Key", "jkjkjkjkjkjkjkjkjkjkj");
con.setRequestMethod("GET");
InputStream inputStream = con.getInputStream();
InputStreamReader inputStreamReader = new InputStreamReader(inputStream);
BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
String line = bufferedReader.readLine();
textView.setText(line);
con.disconnect();
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
我想要这里显示的 json 文件:http: //prntscr.com/n2tv2e
解决方案
你需要像这样添加标题
HttpPost post = new HttpPost( "URL" );
post.addHeader( "Key" , "Value" );
推荐阅读
- c++ - 为什么我的结构中的变量显示为 const?
- apache-spark - Spark从镶木地板文件中读取的列名中删除特殊字符
- scala - Scala Slick 中的可重用表类
- linkedin - 未遵守 UGC Post Image 媒体顺序
- bash - 期待bash中的脚本并调整终端的大小
- caching - 如何在播放前不缓存整个文件的情况下将云存储用作媒体服务器?
- python - Python selenium 多次单击并返回相同的 xpath
- vue.js - 如何将来自VueJs的套接字与内置套接字的Sails js与vue js中的sails.io.js连接起来?
- flutter - 如何在 TabBar 上设置未选中的指示器?
- django - django formset 在编辑模式下无效