如何使用改造将帖子请求发送到tt-rss api

时间:2015-03-02 19:54:36

标签: android curl retrofit

我已经阅读了很多关于Retrofit的内容,但我真的对如何使用改造实现对tt-rss api的发布请求有所了解。

在tt-rss api文档中,它说要使用curl测试登录请求,它应该是这样的:

$ 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);

我不知道这次电话有什么问题。

1 个答案:

答案 0 :(得分:0)

您应该在参数上使用@Body注释将其作为JSON传输。您可以传递复杂对象或Map

以下是Kotlin中的示例(在纯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>
}