如何使用改造向tt-rss api发送post请求
问题描述:
我已经阅读了很多关于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);
我不知道什么是错这个电话..
答
你应该在参数中使用@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>
}