1

我的情况是,当我使用 Ion 将 jpg 文件发布到 Android 中的 Sails 服务器时,它超时了。这是我的代码:

安卓:

Ion.with(ctx, URLConstant.getURL(URLConstant.URL_TYPE_UPLOAD_AVATAR))
            .setMultipartFile("avatar", new File("assets/avatar.jpg"))
            .asJsonObject()
            .setCallback(new FutureCallback<JsonObject>() {
                @Override
                public void onCompleted(Exception e, JsonObject result) {
                    if (e != null) {
                        System.out.println("Upload file error.");
                        e.printStackTrace();
                        return;
                    }
                    System.out.println("Upload file done");
                }
            })

我的服务器代码是:

console.log(funcName + "Start to upload file");

    req.file('avatar').upload({
        maxBytes: sails.config.assetsConfig.maxBytes,
        saveAs: user_id + '-' + sid.generate() + '.jpg',
        dirname: sails.config.assetsConfig.uploadDir + '/avatar/'
      }, function (err, uploadedFiles) {

        console.log(funcName + "Upload done");

服务器可以与 POSTMAN 一起正常工作,但不能与 Ion 一起工作,记录“开始上传文件”但没有“上传完成”,最终我在客户端收到 TimeOutException,如下所示:

11-20 19:58:41.364: W/System.err(5165): java.util.concurrent.TimeoutException
11-20 19:58:41.364: W/System.err(5165):     at com.koushikdutta.async.http.AsyncHttpClient$2.run(AsyncHttpClient.java:196)
11-20 19:58:41.364: W/System.err(5165):     at com.koushikdutta.async.AsyncServer.lockAndRunQueue(AsyncServer.java:675)
11-20 19:58:41.364: W/System.err(5165):     at com.koushikdutta.async.AsyncServer.runLoop(AsyncServer.java:692)
11-20 19:58:41.364: W/System.err(5165):     at com.koushikdutta.async.AsyncServer.run(AsyncServer.java:600)
11-20 19:58:41.364: W/System.err(5165):     at com.koushikdutta.async.AsyncServer.access$700(AsyncServer.java:37)
11-20 19:58:41.364: W/System.err(5165):     at com.koushikdutta.async.AsyncServer$13.run(AsyncServer.java:549)

谁能给我一个线索。此致。

4

0 回答 0