zoukankan      html  css  js  c++  java
  • Android 上传PHP xUtils Bug修复分析过程(非常好)

    参考博客网址:

    http://www.creturn.com/html/2014-01-15-android-%E4%B8%8A%E4%BC%A0php-xutils-bug%E4%BF%AE%E5%A4%8D%E5%88%86%E6%9E%90%E8%BF%87%E7%A8%8B.html

    作为全职PHPer偶尔需要客串下Androider,最近公司的一个项目需要Android的客户端(主要图片特效处理及其上传),自己就客串下Androider.

    之前有过Android开发经验所以做这个挺顺手的,几乎所有东西直接github中拿过来改改就用,不过在处理图片上传的时候选择了xUtils这个

    开源工具类,用起来确实比较好用,挺方便的,例如如下代码就可以实现上传:

    为了印证我们的才行可以把charset加上去和去掉的进行对比看看是不是加了之后就收不到上传文件的信息。

    其实根据HTTP协议来讲理论上加不加charset应该不会影响上传,但结果这个问题确实是由于charset引起的。

    接下来就简单了找到根源解决就行,在源码里面进行搜索 boundary ,找到地方根据作者写的方法注释掉其中添加charset的代码:

        protected String generateContentType(
                final String boundary,
                final Charset charset) {
            StringBuilder buffer = new StringBuilder();
            buffer.append("multipart/" + multipartSubtype + "; boundary=");
            buffer.append(boundary);
            /*if (charset != null) {
                buffer.append("; charset=");
                buffer.append(charset.name());
            }*/
            return buffer.toString();
        }

    我找到的上面对应代码路径在com.lidroid.xutils.http.client.multipart包下的 MultipartEntity.java里面

  • 相关阅读:
    学期总结
    C语言I博客作业09
    C语言I博客作业08
    C语言I博客作业07
    C语言I博客作业06
    C语言I博客作业05
    C语言II—作业04
    C语言II—作业03
    C语言II—作业02
    C语言II博客作业01
  • 原文地址:https://www.cnblogs.com/bxfx111/p/3605098.html
Copyright © 2011-2022 走看看