如何使用okhttp预编写Reddit帖子

Jer*_*ler 6 java post android reddit request

我正在尝试使用Reddit API来保存帖子.我知道我格式化请求错误,但我似乎无法找到有关如何正确执行此操作的任何文档.如果有人能够引导我朝着正确的方向前进,或者帮我正确地格式化请求.这就是我到目前为止所拥有的.

    public void save(View v)
{
    OkHttpClient client = new OkHttpClient();
    String authString = MainActivity.CLIENT_ID + ":";
    String encodedAuthString = Base64.encodeToString(authString.getBytes(),
            Base64.NO_WRAP);
    System.out.println("myaccesstoken is: "+ myaccesstoken);
    System.out.println("the image id is: "+ myimageid);
    Request request = new Request.Builder()
            .addHeader("User-Agent", "Sample App")
            .addHeader("Authorization", "Bearer " + myaccesstoken)
            .addHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8")
            .url("https://oauth.reddit.com/api/save.json?")
            .post(RequestBody.create(MediaType.parse("application/x-www-form-urlencoded"),
                    ""+ myimageid +
                            "1"))
            .build();

    client.newCall(request);

}
Run Code Online (Sandbox Code Playgroud)

我对使用API​​非常新,我不确定我在寻找什么.以下是reddit API的保存链接

https://www.reddit.com/dev/api/oauth#POST_api_save

预先感谢您的任何帮助!!!

Bla*_*rai 4

根据文档,您似乎错误地格式化为 POST 正文。你需要让你的身体看起来像:

{
"category" : "your category" //This could something like "science"
"id" : "fullname of thing" 
}
Run Code Online (Sandbox Code Playgroud)

看起来您还缺少标题X-Modhash

全名文档

modhash 文档

您还需要包含一个X-Modhash标头。文档在这里对此进行了解释。