我在使用改型作为我的web通信接口时遇到了一些问题,因为我的web通信接口包含在一个worpress网站中的php webservice上--当我在WP站点中调用一个JSON API方法时,我在我的android客户机上得到了一个SSL异常,即使我运行的是http而不是https。
这是我的密码-
public class RestApi {
private static final String API_URL = "https://tmc.co.nf/api";
private SmokeTalkRest service;
interface SmokeTalkRest {
@FormUrlEncoded
@POST("/get_nonce")
void getNonce(@Field("controller") String controller, @Field("method") String method, Callback<String> callback);
}
public RestApi() {
// Create a very simple REST adapter which points the GitHub API
// endpoint.
RestAdapter restAdapter = new RestAdapter.Builder()
.setServer(API_URL).build();
// Create an instance of our GitHub API interface.
service = restAdapter.create(SmokeTalkRest.class);
}
public void getNonceForMethod(Method method, Callback<String> callback) {
service.getNonce("user", method.name(), callback);
}
}
按一下按钮就叫get了,是不是已经有人撞到了?
发布于 2014-04-15 08:48:48
我相信你遇到的问题是你试图调用改造,而不是使用异步版本。回调可能是最容易使用的。
@GET("/user/{id}")
void listUser(@Path("id") int id, Callback<User> cb);
RestAdapter restAdapter = new RestAdapter.Builder()
.setServer("baseURL")
.build();
ClientInterface service = restAdapter.create(ClientInterface.class);
Callback callback = new Callback() {
@Override
public void success(Object o, Response response) {
//do something
}
@Override
public void failure(RetrofitError retrofitError) {
}
};
service.listUser(1, callback);
How to implement an async Callback using Square's Retrofit networking library
Android现在要求您执行任何out请求异步,否则它将出错。
而且,retorfit将为您转换/解析对象,这样您就不必这样做了。它在创建异步任务和设置解析时节省了时间。在执行请求时,它也提供了一个很好的标准。
https://stackoverflow.com/questions/23089673
复制相似问题