Tag: 翻新

我应该从客户端发送并行请求,还是发送一个请求并在服务器上并行执行?

我在后端使用android侧的node.js和retrofit。 Retrofit允许asynchronous请求,所以我可以在服务器上并行发送两个来自android的请求,并得到结果,或者我可以发送一个请求,并使用caolanasynchronous并行运行两个不同的请求。 我应该使用哪种请求进行改造? 我应该发送并行请求还是并行执行一个请求? 我认为第二种方法更好,因为第一种方法增加了服务器请求,增加了服务器负载。 请告诉我,我应该使用哪种方法?

改进Android应用程序从Node.js服务器获取JSON

我解决了这个问题。 我在服务器上发送纯文本。 将该行更改为: response.writeHead(200, {'Content-Type': 'application/json'}); 快速的问题。 我的朋友build议寻找改造,而不是我的REST android应用程序使用我的ASync任务。 自从我对这个系统不熟悉的时候,我遇到了一个小问题。 服务器运行使用Node.js通过.stringify()发送JSON对象,所以当我检索一个对象时,它是一个string,而不是一个JSON,我不能将其转换为适当对象的List。 我猜这个错误是由于一个强制exception,因为它发送一个string,因为我得到的exception: com.google.gson.JsonSyntaxException 任何帮助将是伟大的。 这是我认为合适的代码。 Android客户端代码示例如下: private void requestData() { RestAdapter adapter = new RestAdapter.Builder().setEndpoint(ENDPOINT).build(); UnitAPI unit_api = adapter.create(UnitAPI.class); unit_api.getUnits(new Callback<List<Unit>>() { @Override public void success(List<Unit> t, Response response) { units = t; updateDisplay(); } @Override public void failure(RetrofitError error) { Log.d("Failure UnitGet()", error.getMessage()); } […]

如何在Android中使用retrofit进行POST请求

我正在做一个POST请求在Android中使用retrofit到我在Node.js.中创build的服务器。 我已经在GET请求工作,它工作正常,但是当我提出了一个职位要求,我无法获得数据。 我的代码如下: DataService.java public class DataService extends Service{ private final class ServiceHandler extends Handler { public ServiceHandler(Looper looper) { super(looper); } @Override public void handleMessage(Message msg) { try { computeDistance(startLocation); } catch (Exception e) { e.printStackTrace(); } stopSelf(msg.arg1); } public void computeDistance(String endLocation){ RestAdapter restAdapter = new RestAdapter.Builder() .setEndpoint(Constants.Http.URL_BASE) .setLogLevel(RestAdapter.LogLevel.FULL) .build(); ApiService cityService = […]