从androidclient到Djangos的照片

2024-05-16 22:35:24 发布

您现在位置:Python中文网/ 问答频道 /正文

我用JSON对象从Android向Django服务器发出POST请求。如果我只发送字符串,但当我尝试发送照片时,我得到一个FileNotFoundException。在

我将位图编码为Base64,通过JSON发送,然后在Django端再次解码。如果我从网站上传一张照片也可以。唯一不起作用的时候是当我从Android客户端发送POST请求时。在

Django模型

 photo = models.ImageField(upload_to="media/", null=True, blank=True, default=None)

Django视图(Django Rest框架)

^{pr2}$

Android Base64编码

public String convert_bitmap_to_string(Bitmap bitmap){
        ByteArrayOutputStream _stream = new ByteArrayOutputStream();
        bitmap.compress(Bitmap.CompressFormat.PNG, 100, full_stream);
        bitmap.recycle();
        byte[] full_bytes = full_stream.toByteArray();
        String Str_image = Base64.encodeToString(full_bytes, Base64.DEFAULT);

        return Str_image;
}

Android代码

        HttpURLConnection conn = null;
        BufferedReader reader = null;

        //Genymotion Ip Address 10.0.3.2
        String postUrl = "http://10.0.3.2:8000/dishes/";

        try {
            URL url = new URL(postUrl);

            String basicAuth = "Basic " + Base64.encodeToString("username:password".getBytes(), Base64.NO_WRAP); //i use real username+password
            String boundary = "-------------" + System.currentTimeMillis();

            JSONObject jsonParam = new JSONObject();
            jsonParam.put("name", dishName);
            jsonParam.put("price", dishPrice);
            jsonParam.put("type", dishType);
            jsonParam.put("categoryA", dishCategoryA);
            jsonParam.put("categoryB", dishCategoryB);
            jsonParam.put("description", dishDescription);
            jsonParam.put("photo", convert_bitmap_to_string(bitmap));


            conn = (HttpURLConnection) url.openConnection();
            conn.setUseCaches (false);
            conn.setDoInput(true);
            conn.setDoOutput(true);
            conn.setRequestProperty("ENCTYPE", "multipart/form-data");
            conn.setRequestProperty("Content-Type", "multipart/form-data;boundary=" + boundary);
            conn.setRequestProperty ("Authorization", basicAuth);
            conn.setRequestProperty("Connection", "Keep-Alive");
            conn.setRequestProperty("Accept", "application/json");
            conn.setRequestProperty("Content-Type", "application/json");
            conn.setRequestMethod("POST");
            conn.connect();

            DataOutputStream wr = new DataOutputStream(conn.getOutputStream ());
            wr.writeBytes (jsonParam.toString());
            wr.flush ();
            wr.close ();

            InputStream is = conn.getInputStream();
            BufferedReader rd = new BufferedReader(new InputStreamReader(is));
            String line;
            StringBuffer response = new StringBuffer();
            while((line = rd.readLine()) != null) {
                response.append(line);
                response.append('\r');
            }
            rd.close();

            return response.toString();


        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
        } catch (MalformedURLException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            if (conn != null)
                conn.disconnect();
        }
        // return Contents
        return null;

这是创建的JSON:

{"name":"dish_name","price":22,"type":1,"categoryA":1,"categoryB":1,"description":"description","photo":"iVBORw0KGgoAAAANSUhEUgAAAoAAAAHgCAIAAAC6s0uzAAAAA3NCSVQICAjb4U\/gAAAgAElEQVR4\nnO3da6yl13nQ8edZa73vu\/eZM+cyV3vs8XU8HjvESesmDk0KSdOGol4QQnypAPEFQZFArVBU8QEh\ntUJAQaoEEh9ACKECFSKtKCoqhEpJICUJcWxP7Sa+NDNjz4zjuV\/Obe\/3XWs9fFjn7NnJYMvjwiyT\n8\/\/Jsuxz9tl7n\/GHv5+93rVeXVlZEQAAcHe52m8AAIDdiAADAFABAQYAoAICDABABQQYAIAKCDAA\nABUQYAAAKiDAAABUQIABAKiAAAMAUAEBBgCgAgIMAEAFBBgAgAoIMAAAFRBgAAAqIMAAAFRAgAEA\nqIAAAwBQAQEGAKACAgwAQAUEGACACggwAAAVEGAAACogwAAAVECAAQCogAADAFABAQYAoAICDABA\nBQQYAIAKCDAAABUQYAAAKiDAAABUQIABAKiAAAMAUAEBBgCgAgIMAEAFBBgAgAoIMAAAFRBgAAAq\nIMAAAFRAgAEAqIAAAwBQAQEGAKACAgwAQAUEGACACggwAAAVEGAAACogwAAAVECAAQCogAADAFAB\nAQYAoAICDABABQQYAIAKCDAAABUQYAAAKiDAAABUQIABAKiAAAMAUAEBBgCgAgIMAEAFBBgAgAoI\nMAAAFRBgAAAqIMAAAFRAgAEAqIAAAwBQAQEGAKACAgwAQAUEGACACggwAAAVEGAAACogwAAAVECA\nAQCogAADAFABAQYAoAICDABABQQYAIAKCDAAABUQYAAAKiDAAABUQIABAKiAAAMAUAEBBgCgAgIM\nAEAFBBgAgAoIMAAAFRBgAAAqIMAAAFRAgAEAqIAAAwBQAQEGAKACAgwAQAUEGACACggwAAAVEGAA\nACogwAAAVECAAQCogAADAFABAQYAoAICDABABQQYAIAKCDAAABUQYAAAKiDAAABUQIABAKiAAAMA\nUAEBBgCgAgIMAEAFBBgAgAoIMAAAFRBgAAAqIMAAAFRAgAEAqIAAAwBQAQEGAKACAgwAQAUEGACA\nCggwAAAVEGAAACogwAAAVECAAQCogAADAFABAQYAoAICDABABQQYAIAKCDAAABUQYAAAKiDAAABU\nQIABAKiAAAMAUAEBBgCgAgIMAEAFBBgAgAoIMAAAFRBgAAAqIMAAAFRAgAEAqIAAAwBQAQEGAKAC\nAgwAQAUEGACACggwAAAVEGAAACogwAAAVECAAQCogAADAFABAQYAoAICDABABQQYAIAKCDAAABUQ\nYAAAKiDAAABUQIABAKiAAAMAUAEBBgCgAgIMAEAFBBgAgAoIMAAAFRBgAAAqIMAAAFRAgAEAqIAA\nAwBQAQEGAKACAgwAQAUEGACACggwAAAVEGAAACogwAAAVECAAQCogAADAFABAQYAoAICDABABQQY\nAIAKCDAAABUQYAAAKiDAAABUQIABAKiAAAMAUAEBBgCgAgIMAEAFBBgAgAoIMAAAFRBgAAAqIMAA\nAFRAgAEAqIAAAwBQAQEGAKACAgwAQAUEGACACggwAAAVEGAAACogwAAAVECAAQCogAADAFABAQYA\noAICDABABQQYAIAKCDAAABUQYAAAKiDAAABUQIABAKiAAAMAUAEBBgCgAgIMAEAFBBgAgAoIMAAA\nFRBgAAAqIMAAAFRAgAEAqIAAAwBQAQEGAKACAgwAQAUEGACACggwAAAVEGAAACogwAAAVECAAQCo\ngAADAFABAQYAoAICDABABQQYAIAKCDAAABUQYAAAKiDAAABUQIABAKiAAAMAUAEBBgCgAgIMAEAF\nBBgAgAoIMAAAFRBgAAAqIMAAAFRAgAEAqIAAAwBQAQEGAKACAgwAQAUEGACACggwAAAVEGAAACog\nwAAAVECAAQCogAADAFABAQYAoAICDABABQQYAIAKCDAAABUQYAAAKiDAAABUQIABAKiAAAMAUAEB\nBgCgAgIMAEAFBBgAgAoIMAAAFRBgAAAqIMAAAFRAgAEAqIAAAwBQAQEGAKACAgwAQAUEGACACggw\nAAAVEGAAACogwAAAVECAAQCogAADAFABAQYAoAICDABABQQYAIAKCDAAABUQYAAAKiDAAABUQIAB\nAKiAAAMAUAEBBgCgAgIMAEAFBBgAgAoIMAAAFRBgAAAqIMAAAFRAgAEAqIAAAwBQAQEGAKACAgwA\nQAUEGACACggwAAAVEGAAACogwAAAVECAAQCogAADAFABAQYAoAICDABABQQYAIAKCDAAABUQYAAA\nKiDAAABUQIABAKiAAAMAUAEBBgCgAgIMAEAFBBgAgAoIMAAAFRBgAAAqIMAAAFRAgAEAqIAAAwBQ\nAQEGAKACAgwAQAUEGACACggwAAAVEGAAACogwAAAVECAAQCogAADAFABAQYAoAICDABABQQYAIAK\nCDAAABUQYAAAKiDAAABUQIABAKiAAAMAUAEBBgCgAgIMAEAFBBgAgAoIMAAAFRBgAAAqIMAAAFRA\ngAEAqIAAAwBQAQEGAKACAgwAQAUEGACACggwAAAVEGAAACogwAAAVECAAQCogAADAFABAQYAoAIC\nDABABQQYAIAKCDAAABUQYAAAKiDAAABUQIABAKiAAAMAUAEBBgCgAgIMAEAFBBgAgAoIMAAAFRBg\nAAAqIMAAAFRAgAEAqIAAAwBQAQEGAKACAgwAQAUEGACACggwAAAVEGAAACogwAAAVECAAQCogAAD\nAFABAQYAoAICDABABQQYAIAKCDAAABUQYAAAKiDAAABUQIABAKiAAAMAUAEBBgCgAgIMAEAFBBgA\ngAoIMAAAFRBgAAAqIMAAAFRAgAEAqIAAAwBQAQEGAKACAgwAQAUEGACACggwAAAVEGAAACogwAAA\nVECAAQCogAADAFABAQYAoAICDABABQQYAIAKCDAAABUQYAAAKiDAAABUQIABAKiAAAMAUAEBBgCg\nAgIMAEAFBBgAgAoIMAAAFRBgAAAqCLXfAACgDlMRETURkTg3joUsIuLnvu7yre+Wr5THTIOISBdF\nRLITEUn6vc+Dt8MEDABABUzAALBLlbm2zMFlWm2TiMhWENmZZefn4PLILt367mIvIpLmpuTGbn3X\n5qZh3I4JGACACpiAAWBXK9NqmcYGJyKytxcRudmJiPi5KVlMRKQs7Ma5Fd\/oRUQWBhGRqRfZmYnL\nPI23wwQMAEAFTMAAsKttT6tRRKR3Ijuz7yiK7My4ZYX49uulywqx5Vs\/u71CPD83420wAQMAUAET\nMADsUmVCbX0YhsHUpZSsDTHGUW\/e+95ZzlmzOOcOr4mZLZtmyb04EUmSVPT1VZ9SWkxeRIacvPeD\nmnMuijnnNLER+J0QYADYpVTVzKbTadM0cTKEEMw555xqNjMTc841PrRtu68ZjUaj5V5TSkPnRWRz\nc3NjY0NkUFUxMbOu66bTqTZeVS3nYRha52v\/iu9rBBgAdikXc9M0WVRNTCTGKDk1qk+tiRf3l+XA\nA\/6B1XsOLiwsWLsdi5zz4EVE9i65nPObG9cvX758fvrGZbn8n2XqxL26z8UYW9Gm6aYp1vz13vcI\nMADsXn3fD5q99+Ouyzn3cei67okHHjl27NiPnl\/s+94vdKq6PkxDCCLivbegZpb7ZGarq6sHDhw4\nMTy2trb2zfjN8985H+MQQsj90Pe9eC4zeie6srJS+z0AACpwQfu+11E7mUzu2\/Kq+vf6Bz780If9\nwsjMzKmqpvJBtDoz05jNbBpEVVtxZpZzNjNRjTG2Ply\/fv25N5+\/JJf+8YqIiBM+gn4nfjQa1X4P\nAIAKhjioqnnXNM0BN\/rhH\/7hnw3HQwjmnZmpc6qaxcxMco4xSsrOuagWY9RszjlVVVVRVdWyWvzQ\noYfC1fAfRxe99+XgDrwdJmAA2KUalWEY7p+ExcXFf7L6I+Px2Dch57yQ3XQ6\/V8P+ZTS58YX33rr\nrZtXr62trVnKMcaoNh6Pl1ZXVlZWDh88dOjQoZ\/8tosxPn2tjTGm1jvn3jr9xlfWvvIrK3wE\/U4I\nMADsUkEs5\/yBbv8nPvGJv\/Ttcc5ZnIpIM00ppX\/Tf\/uVN175\/NJEVSUm51yOyXtfDu7IKmYWnB+P\nx7\/gTxw7duzJN1MIYerMzLqsV65c+Yn+i3V\/wfc5AgwAd0k5VaqdO1VqvRURWU4+xijBxxiT1xCC\nTHrnnKXovd\/QpKp7t3LTNPvWs4mNRE3s8tgPw7Cxx3vvN2MfQnAmOeem6VJKIYQYY9loFEWdc4uD\nDcMwXQhmlpyY2XjaLy8vf27pM977ZWnMbGuIIYS\/+dC5kydPTtY3SnRDCEOKzjk\/dxZ02UNcTsXK\nXvfs2fOZDz2zurr68\/\/TnHObYz+dTt984\/Vn15\/9Z4tmZpYkhDCMfEqp3Ddp0oiILE1ERNY6kd13\ndjRXQQNAZdPptG3byTCEEMRr3\/eLbTvLp6h0XbfSdQsLCwcX1Xvf9Hlzc\/OGn5iZqoiIqoqImXnv\n+74PIUynU+eciDjnnGjOOaXsvTezGGMYb0f6mWee8a\/6pmnSJJmZqr7wzRe+fun0ZDJZaLtyjVX5\nuqqK\/Z8XdWOMW1tbX\/rSl5566invj4nIMAxN0xw9evTqt66qnjKztm1FpLw3YXFYRJiAAeCuKVNj\nmSC3T1Eu99z1fhiGoXEi0oqbTqf3D23O+a\/1o6Ny9MjhIysrK3tc45wrVc7BxRg3fF5fX19\/\/c1z\ncu5ZuWliv7XqzGxLbDQa+c1eRFzbTKfTNAo5571TUVU1MbPU+r7vf33y1OOPPz7N5pzrkqjqz4Sv\nnT17dnaH4JyzC8E5N6RYflZ2TjAuJz+XaX7Tm4gsbmXv\/Yc+8vQDDzzwC1\/3IrJH3ebm5q+e\/sJN\nufn5lZBSkjbknMszlGcrp0zHXblYzAQMAJWllGRnfp1uTUej0WK3cPz48T997WjXdblcgWwiIt57\nVY05NU3TBtu3b9+jSwefHJ70m2dffuPlYbjivQ9N6Pt+ZFa63jRNtCw7516pqHNuMgwHDx58bPRY\nzjmEJsbYNN1zLz13es\/pEML2vJtzCEGcizFmyyGEt5uAy+O9VzN77rnn9u7dq3rQOTdM+9Fo9OQj\nT3711FeHYWjbts8cTnkL25AA4C5RERWJXkzFVLJKyKImSSWb7e01TNNPb7Q\/7h\/8O\/s++pl4cGze\nR\/PRWvGTPU3vRJOY6oJ5Fy2LBnNDyubciW7\/R\/Y\/+qfebB6fXnihcaGP2alzLgy5FTdKGqZp0rrB\nSXIylXRoU3\/06Y99bGMculb73Prwi\/e8\/i8unszeBeeGGJ06cc5UtjQlJ977ZLlvNHrxJqbiRJxI\ndJJUFnvx0ySqOWdt\/JWrV048+OjZUTwy9dMcHw3L+fKFry30EqMFL2beVE3aLN5kEiQ5URVR2W03\nT9qVYz8AvJ\/MNtS2bfv0w0\/\/0A\/90Hg8LgOrc65pGhEZhiGlpKplXVZVnXO2M5KmlHLOxx87\/qnV\nT5VnKz9lZiml2SJu+Qfv\/f79+w8fPiwiMcacc9\/3J0+e9N6XaXs0GpUXKq\/lnCuLx2\/3\/lW1zM0i\nknO+du3aK6+80jTNbOn30T2PllM7tle1ISJ8BA0Ad01Z6VwYRHbWPqdeRCRP+rZpPr2uP\/KBT\/yY\n3mMXLVoUkdyEjX76Kz84vXjx4psXL1y\/fl1NUkoj9Xv27Dlw75FDhw59JC5773\/i93sX3Ia35p59\nn1v71BeufeGX26hOu4V2GmN2JsH5bDll9d57\/9nNhx95MTfaxBj9qH311Vev+w0zS10Qkdz3IuKC\nV9WVabY+bzW58b4dTHauVe69iEgMIiKDaIwxtU7E55hCG\/5p\/60\/d+zJD5\/LWUS8O3TvPU\/8YWMS\nvq6TruvKXZLKdqay3qy78pNpAgwAlYUQUko\/8OBHDhw4kC9lMwtNSCltbm6+eOrFz18+1\/d92aQU\nnM8596Y3btx4\/eJ3nHOy9PATTzyhulCeqm3bdnn56ZtPe\/9sueB5NvvmnL33IhJjvO+++7z3aRhU\nte\/7Vyav6KKKSLnOq3GuXHEVY+zEOefM3mmHUEqpbdv1OC2jsIgMw3DmzBnvj8YYzbvRaHT48OGz\nF86WIZsDKgvWgAHgLmlNfZbBmXnXW87BDU6S2miQIwcP\/9LChw+tZdeFbPnigr1x8\/Kf3fzib4+v\nx5yz0+xUvDNVc5obn4PTIXVN88raxT+49uZLT638\/hOLf+IPY0g2bV27Z\/wjb9jjW5f+27JONC8n\n71K24FLOqrqysvJz\/ngXpffmmvCbS1d+59zL3150sQtDir4Jo8F8lq0g5tSbZBVxKiZ9kOTEnEQv\nsyuiy5JwFmt8KJ8vm1nnvDP5C\/2RxtSCyzHt3cx58\/yLY59zNq9ZpfzlTZyJmqjIblsEZg0YACoo\nm3TLumkI4aMf\/WjOeXZ6xvnz57906ktlZXe2aFoeLCJlWbdt22EYxuPxxsbGl7\/85bfeeiuEUB7f\ndd3jjz4+lrFzznaeoazmisjy8vLs1WOMFy5ckJ1rpMvD7vR3mU3Ys8XpGOO1a9fKHmIR8d4vLS05\nivPd+AgaAO6S9WBmtmcQNUteU85qTk3+0drxJ17qvGgeojTu+vXrf12f21gd9m8EEVlrRVUXoorI\nRhBR7bLLKU8aGzQ306FzYTLpn\/\/a13\/1Bz++urr6F1+wnON4tOeDcvzA9RecCxutiVcRU1WJ+eDq\nfveWmEibxEz+R754cUHHvanKRuuy2DC3Vl1O7yortd3c7X3HUURkK4iIBNGcLTVavq6q02STm+un\n9\/Vt2x6cmIg84pZfFFeO4CjP2SSR795V7HfZ5Vn8\/wgA3CW6YzZrlkH2\/vvvb5ompeScCyE8f+75\nyWQym3dnp1zNfqrMyuUoKxEp1y2vr6+\/+OKLwzCUl0gpPfbYYyGE2+faxcXF2bOp6sbGhojknGVn\nLr9Ts6dyzs0unJ498+zXLBPw7PcCEzAA3CVdEjNJXnO27DWJjrMeXF49EpbyVm\/jdhLjv1t86wty\nyasbhn69C7IzfU6DiMgoiogOXqLkErkyU67Z4Bfab6y9Od68EN394txUsnn52XT\/ma0zn1\/wKcbW\nnGVT0c6HiTNVTc5ijOt5mDoL4tWkHUxE26SzV2xTFpH1ICLSZRGRcpDV9ZGIiCsrwUmymSZzJle6\n7JysTNU593petz379vVqZo1YEA2i2Wz7UBET2ZmGyxXRfpedBc0EDAB3iX23Mm4ePny4jLPDMIQQ\nXn311SRJRMoO2tuVjbyzw7Nyzk3ThBD6vlfV06dPl4eV9eOjR49+z8rrbMYt\/R6GYRiG2Zspi7h3\n+nuVmbts8y0XWotI2V5cBuvy3fJO2Ac8wwQMAHeJy2ImrUnOYrncGiHde\/DA+tVeu9Coi8PwX9yF\nfLAZb0YRmbROdnYMz52ZbNLH1odNSd77pvHDMETVtm11Mr381oVzD\/Wj0ejIVfPef2yydFXsd1IO\nzrshm1nf2lSzOUuSuiiWXSsuWl5vJWdrTbPYJKiIZBUR2QpOdubgwYuI7OlFRFJ7610lFfHOcs5i\n+yYqopvezOze1K1uWFk5VhEnZinrTn\/Lrujyr+Uxtss+nGYCBoC7pEyKOx8db\/\/r0tJS+WJK6dq1\nazHGlJL3\/u2WY8uR0WXBeDY3lxFTRFJKN27cKEdAD8OwsLDQSVcG3PmF5zI655y7rmuapjyViMyf\nrvXulZ8ta9vzd09aXFzcPlZaRESybE\/D7\/GP7\/sOEzAA3CXRiZlsanSNWxw0xrjQdCPfNWYWzcTf\nuL7W7AkmNrXkvXdi8t13CkoqojrVLEGbaCIaG42Sy3rqRGTUtt+Smw8v79+XkgUfJrGVEKTXlLM6\nVY1i19bW98q9McYsIiZPTvZc3Zhu7Pcxxhx8FvGS5Xvm0blV241WZHs1ensmVu9iTiEEy3niNecs\n2UTkHmtGk9xLdt6t5X5DVL1LKamp7My+5RmaXbb6WzABA8BdMlthLVNmGTfnR8btGx+910m0bCPu\n+152Jl3vfZY8e9Eyam9tbU2n0\/IqzrnFxcUkqSzflnXcO33dMtOX659jjOUU6PF4PBqNZncg3tra\nihKFCXgOEzAA3CUhi6q4rCKy1loIYbxl3sRnEbHkJMWo3mWxqd66GGo0t\/vWvIhImJsX5+\/LW+bO\n8UZc6nXUm4gsDLJXXLlfr6oTMUl29fIVbYI4t+Gjmf3UcOA5eeOb\/RBCaGJ2TstzlrXe8ibKnJrL\nHXxFZGcuLzuGm7KFKYuq8ynrVu8WmsXV5QXxmlWSOef\/w8r6VyQnc9lMyvEjWUTEJZGdM7HDLjsR\nmgkYACqY3WtotkpadveWrb3v7Wrk8lMLCwuz9eMyT8\/ug1T+fu3atdnAamYHDx502wc+v8eTsGZP\nbmZlQTrGeOTIkfI7ioj3\/tKlS9vbj7CDCRgA7hKvamZNFlXts\/lkm42uuZS9NxNLsryy0m0MI9VJ\ncJKtrMKWnbJxbtLt50ancl7VzZGIyDippXyiWd23ZilYznlrJBdl2mVNSdpkZhLHLqXh3+65cPDg\nwc+cVlX3sC4+LItNuzkMwyQ41e3XKhNw2e\/rsxMR0yw767VlPbjsAw7Oi0iymFJq2857\/7Grw0\/n\n+wbvRSQ7Exn+q164tmiDF\/HlI4DtNeByb6WwKz+WZgIGgLtnNtrO5tG1tbXZZtnV1dXysHKk1J0+\neVnH3bt3b7lGupyHNZXp7Giq2U15T5061XXd7KeOj48PwyB\/hAXacq\/iMlhvbW0du\/fYwsLC7Krv\n69evr6+vv\/NNhXchJmAAuEt6J1kki5hZoy7nrJavXLiYZK9TzV6d8z+\/cfScnPv3SznknWuM505j\nLsocvNmIiExERGQ0iIisN3b06P33bYWc89aimMivLV\/6PRHJpqrRazRphqyq\/2nxYr+6\/oxXEYnq\nDj\/64GdfOn1ZLv\/6iuWcG\/UistaKSFmfnt+FvE3nroseJCfLyxZM9IbP7fLCz42fGJ3KzkxEYtCz\n589OVs0FH2ISMe9Uvvu+wmXK5yxoAMD\/K\/NXQYtISunKlSvztzk6fuy4Ezc75\/lOPfzww865cj1z\nzvn8+fMqOlvxnV3q3Pf9mTNnZOcAZxF58uiTf5STqsrTlpd47LHHyjp0ed2+78\/K2XIyl7zX46a\/\nL3E\/YAC4S9TEifResldnoqpedG1t7cFjj765zz94Q7y6e2Wcrlz7sl\/XaZx2zsR8FqduHLVJkp2o\nau8kO5WYg7pG3DDtR22bU\/r7N+75K+EDveaps9a7Ydr\/3RvPXhlJVDWnTVav2ksS7zrxNy5deeTE\no2f25uNrrc9yNCwuXs5nJhcP9\/ZWq8F7n6wR7dV8CJqyiImKllncqRMt90r0zqWdzVS+a\/7B1ZXP\njp\/ZCpactKIppb91z5nfuHq2iTLSsNlIUlkYJGTZChKdZCdZJdhuHAd34a8MAO8jZvbqq6\/Ojr7y\n3n\/wyAebpikrpmWcnb950WwPsXOuHOM8Ho+3traWlpaeeeyZspRblpBPnTpV7hB8+yvmnFNK3\/jG\nN0II5UfM7AOPf+D4fcdVts+anq1Mxxhnh0XPbnmUUmqapm3bGOMwDN577\/3i4uInj32yvMnysJzz\niy++WH6L8pxMwDNMwABwlyQVUxlHabJ4E2+SVUzkNb85HDv042913mTNpbA4\/km7Z\/\/VN17v8\/JU\ntlx2JlMvyevNTqdBu2mWlL1zjQ+uT7kffn5r3189+LHDzZ7Oee+dpfzFQ\/1vnnr2281URMbJNVmG\nsinXu6wachazV21t\/d6lj+mBNY0j38SgH5F9D12VZnLpiam8tOSmFnXIQZ00vk9xPEjIsh5ycpIb\nv5kHN42jthuZczH\/w7VDf\/vgn4x72qnmPcm5IX3lPvvcH3z1D3QtpRy9RrW9vnVD6oMkJ87EldPB\ndNet\/hb8nwgAVLaxsVHGRFUtM+vevXt\/7MEfW1lZKTdKmh3mHGOMMZYhcjKZlK\/v37\/\/48c\/vry8\nXNaSyyXQL7300pZsfc9+Yp0jIsMwnDx58urVq865cn5W27ZPPfnUM\/c\/M5LR1tZWCKHruvIkZXid\nHRldDqxu27bve+fciRMnPnnik2Xq7bqufPfll1\/+zuQ75feaXZVd54\/4fUlXVlZqvwcA2BVu3Tto\n56rmMvlFJznnH\/jQh0+cOPHZL8TRaLQee+\/9NPenT58+u\/WH1+X6F8ScuFOtquqBqZnY4+KduD+j\nJ44dO+bbRlWTc2b27UP62muv\/dKNr3nvWwvDMKQmiIgmVVXzZmZqoqrJcoxxcWXvpz\/96c8+2zRN\n0wxZRIJpjPHl1099c\/rNC9Kb2BfFvPrLXRaRbjBVPRItSvwZWbxX7n3q4Q\/u2bMnJHPOTeOQc37t\nSHP27NlfvvpsjHG9Feecz5Jz9sm89xNvsnN9dflzKLuZe3+3\/4vUxTYkAKgspdS27cmTJxcWFprm\nwclkoo1PKfngjx07dmzz6NWrV98aX7h27drlPVMRWW396urqR\/2hw4cPP3GzVdUhp6ZpsqqZnT59\n+oU3XvD7fErJ1Jd5d3Zt8\/w\/OOdCCBsbG7\/7u7\/7N0afcs616kTE8vbFzI+kR05Pr587d+7llesx\nxrW0rqpLC23Xdcdk6b777vup9YMhhBxTSimIm06noz0Lk8nkzJkzv\/f676W93TAMYWGcUooxee9D\n8O9hf\/P3KyZgALirygRc1v9Ki5yImYUs3vs\/9tGnH3jggV\/8qs85Sxy8925nh4+ImFMRadSZmcbs\nnJtacs7lIYYQvvignj59+p9f\/EaMceRdSmlwzjkXpdx9yIlIm7OZZaeqKn3suu5ynqjq\/mbh6aef\n\/mm9R0T++FkRkS6KquYcvffeJKXUqzrnfDIRKR+Vb1pU1bF4EbnpU9u2\/\/rY5Pnnn\/\/qpdPee80a\nQhi2piEEydl7v6XZOdf2txo8CSK77xTogouwAOCuKh+6loXZMo1auTY4ZVU9c\/7cZDL5qY19TdN0\nTTCzcshUWffdPo4j55xzcD7nLN6ZWePDZDL5rdd\/\/1uvf+tcl3POmtSKPPkAAAUJSURBVLNzzsph\nkCXAoqoadt5D2QSVUkqtNzM3pLNnzy5f2Dhw4MDDm42ZBdOmaVKKqupEnXMagoh4mRupG++c05hV\ndQj6xhtv\/MtTX71w4cJGKzlnNS3vzcycqohMc3LOzee2HO7hduVFWEzAAFBf2e1TNhellJaWlh58\n8MGnHjzWtu3Hzzsz+9BbIjvnMEc17\/2azznnF4+Gvu9\/LZ9+7bXXJjfX7+xVs6mWm\/NKFFNVC845\n9+GHjx89evQjsi+l9KHz2Xt\/\/IrknKeNmlnfqJl1UZxz55YkpfSlx\/zZs2f\/++VTly5dksmgqqlx\nIlJmZbwdAgwAlW3fuHfnxkExlrsatMvSHD58+M\/b\/fv27Xvm+khVQzRVHSSLyHUZrl279tv5\/Hcu\nfefzq5si0tidneRcjpOcD3D2qqrtVgwhfET2PfTQQz+pR9q2feyyOec2XXbO9Y2KSBdlGIaTw5WL\nFy\/+K\/963\/enx4OqduZEpHdmZnf6fnYbAgwAlc0CXHbvlM08ZtYmUdWpM1XtxqPxeLwQWu\/9xtbW\n5ubmepzOzsdw2czMyZ0Fr3z8G+ZOe85iIpK8qmoWyTl7k67rVhYWu65Llp1zQ+P6vt9aW59MJj6Z\nqka3vYatquVYrGkon1P\/X\/6D+j5DgAGgsnKHorLTd3bQlYi4aXTOTZ2ZmXqnqiV4fYwhhBhunVFV\nbu3g9c6Odrg9wKZiZr1k27lTscvmvW9MY4xN1\/Z9P\/USQvAmOWcXs4hY48sWI1UNpiIytE5VLe3K\na6veNQIMAJWVYy5m+4W2L3g2k2whBL\/zxZxzmruxoDe5dZPBMrne4Se+7c6KsqomvXXOZXA+xlju\n3BBzyjlnp7NHdlHMLFn23pt3IhJEzax8iC1OzawZspmV7+LtcBU0AFRWOioi27c08N57r6pNCDnn\nOAzlFCrv\/ewsq5yz5Fs7eq0cE32HAQ6iIpK3DwaZ++Gdj45TSibmvVfvcs7qnYi04rz3zrtylEdK\nqXz0XabnbGZmjahzjvn3nXEQBwBUNrv+uYy5hZkll9WpaxsRiU5zzkPYvsmBa3yXNZn5ZKLqdH5b\n07vVezHbTm+JZTmZS1PZJ6wuNL2zlNLULHShSRJT9Cl776diOWcNrm1b6aOqqlNVjWXhN4uZ3eGS\n9K7DBAwAlZUV3++5XW4I5UImFTPZuTwqq8wmYJes7OWVndH5u6bYd69MwOWdiIiIl1u3PDKvzrnk\nxMw0m3OuNTWzJOa9F+9SSkFdeW9WNvyqhizv\/f3sGqwBA8D\/N+bvGnSnK75vp3xwPf9s5VXKJ8i3\nv2KJdJxb3r39YA2uf343WCEHAKAC1oAB4H2qTJxlvnRzXykza5lQsxMRGZzIzlXN7978NqRuex\/w\n3HN6EZFh7vFlrp2fj+ff5\/y7mn+3eDtMwAAAVMAEDADvU+3c\/YPLcDu\/0SjPrbZ28Xu\/+27421Zq\ny0w2P8XOf31+ot2+icLc48uzzb9bvDMmYAAAKmACBoD3qX5uyrz9uuL5Vdj8nq49djvHT85ea\/vr\ntz1y\/kiNMPdTee7xZfadX1fGO2MCBgCgAiZgAHifun2Ndn7GnV\/xfW\/7bu22vb\/vRpl0t6+Ivu15\nmH3fPSZgAAAqIMAAAFRAgAEAqIAAAwBQAQEGAKACAgwAQAUEGACACggwAAAVEGAAACogwAAAVECA\nAQCogAADAFABAQYAoAICDABABQQYAIAK\/jfzpfBvybI+lgAAAABJRU5ErkJggg==\n"}

堆栈跟踪

W/System.err: java.io.FileNotFoundException: http://10.0.3.2:8000/dishes/
W/System.err:     at com.android.okhttp.internal.http.HttpURLConnectionImpl.getInputStream(HttpURLConnectionImpl.java:197)
W/System.err:     at gr.teiscm.msc.restaurantapp.AddDish$PostJsonTask.doInBackground(AddDish.java:250)
W/System.err:     at gr.teiscm.msc.restaurantapp.AddDish$PostJsonTask.doInBackground(AddDish.java:191)
W/System.err:     at android.os.AsyncTask$2.call(AsyncTask.java:288)
W/System.err:     at java.util.concurrent.FutureTask.run(FutureTask.java:237)
W/System.err:     at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231)
W/System.err:     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
W/System.err:     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
W/System.err:     at java.lang.Thread.run(Thread.java:818)

异常

e = {FileNotFoundException@4240} "java.io.FileNotFoundException: http://10.0.3.2:8000/dishes/"
 cause = {FileNotFoundException@4240} "java.io.FileNotFoundException: http://10.0.3.2:8000/dishes/"
 detailMessage = "http://10.0.3.2:8000/dishes/"
 stackState = {Object[10]@4245} 
 stackTrace = {StackTraceElement[0]@4246} 
 suppressedExceptions = {Collections$EmptyList@4247}  size = 0
 shadow$_klass_ = {Class@1187} "class java.io.FileNotFoundException"
 shadow$_monitor_ = -1346740262

如果我只是评论一下这句话,它就行了:

//jsonParam.put("photo", convert_bitmap_to_string(bitmap));

提前谢谢。抱歉给你发了这么大的帖子。在


Tags: httpnewstringputjavaconnsystemnull