翻滚的老鼠屎 2018-05-09 09:31 采纳率: 0%
浏览 787
已结题

HttpURLConnection上传id,图片,文本

现在要在安卓端用HttpURLConnection往服务器上传图片和文本,但是得附带一个用户名,用key1=value1&key2=value2的形式,但是getResponseCode()为500,服务器没问题,可能是请求头写错Content-Type了,改为pplication/x-www-form-urlencoded"后报415如下,代码如下,请大家指导下一下吧
con.setDoInput(true);
con.setDoOutput(true);
con.setUseCaches(false);
con.setConnectTimeout(3000);//设置连接超时
// con.setReadTimeout(5000); //不设置读取超时时间了,因为上传在服务端保存的时间不确定
con.setRequestMethod("POST");
con.setRequestProperty("Connection", "Keep-Alive");
con.setRequestProperty("Charset", "UTF-8");
con.setRequestProperty("Content-Type",
"multipart/form-data; boundary=" + BOUNDARY);

  • 写回答

2条回答

  • ZhihengTao 2018-05-09 10:15
    关注

    如果想了解HttpURLConnection的用法的话,最好去看官方文档,或者去github搜相关demo, 或者google搜索HttpURLConnection upload picutres.
    应该能得到很有价值的信息, 或者可靠的demo.

    如果只是想实现上传需求的话,建议使用开源的网络库, API使用方便,做了了性能优化,而且稳定性好. 三年前,我了解到的开源库有okhttp, volley.
    当然, 对于简单需求, 如果你希望项目轻, 不想引入外部依赖的话, 那还是使用标准API自己实现吧.

    评论

报告相同问题?

悬赏问题

  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog
  • ¥15 Excel发现不可读取的内容
  • ¥15 关于#stm32#的问题:CANOpen的PDO同步传输问题