2015-03-02 49 views
2

我已经阅读了很多关于Retrofit的改动,但是如何使用改进来实现对tt-rss api的post请求真的有生面团。如何使用改造向tt-rss api发送post请求

在TT-RS的API单证

,它说,使用卷曲测试登录请求,它应该是这样的:

$ curl -d '{"op":"login","user":"you","password":"xxx"}' http://example.dom/tt-rss/api/ 

我用下面的调用,但给我“NOT_LOGGED_IN”错误信息

@FormUrlEncoded 
@POST("/api/login") 
Observable<login> doLogin(@Field("user") String user,@Field("password") String password); 

我不知道什么是错这个电话..

回答

0

你应该在参数中使用@Body注解把它转移为JS上。您可以通过复杂的对象或地图

下面是例子科特林(易做相同的纯Java)

data class LoginRequest(val login : String, val password : String, val op : String = "login") 

trait LoginService { 

    POST("/api/login") 
    fun doLogin(Body login : LoginRequest) : Obervable<login> 

    POST("/api/login") 
    fun doLogin2(Body login : Map<String, String) : Observable<login> 
}