-1

AndroidでOkHttp3を使用してChallonge APIにデータを投稿する際に問題が発生しています...これは私のコードの要旨です:

OkHttpClient client = new OkHttpClient();

HttpUrl.Builder urlBuilder = new HttpUrl.Builder();
urlBuilder = HttpUrl.parse("https://api.challonge.com/v1/tournaments/"+EVENT_ID+".json")
    .newBuilder();

RequestBody postBody = new FormBody.Builder()
    .add("_method", "post")
    .add("api_key", API_KEY)
    .add("participant[name]", name.getText().toString())
    .add("participant[misc]", forum_id.getText().toString())
    .build();

Request request = new Request.Builder()
    .url(urlBuilder.build().toString())
    .post(postBody)
    .build();

Response response = client.newCall(request).execute();

何をしても、結果の応答は 404 ページです。

同じ URL に対して GET 応答を行うと、適切な応答が得られます。ただし、.post(postBody)リクエストに追加するとすぐに 404 になります。

Challonge API のドキュメントはこちら: http://api.challonge.com/v1/documents/participants/create

4

1 に答える 1

2

間違った URL を使用しているようです。"https://api.challonge.com/v1/tournaments/"+EVENT_ID+".json"取得した URL は、ここに示すように、1 つのトーナメントを取得するためのURLです。このリンクは、GET リクエストを受け取るためのものでした。

あなたが提供したリンクによると、コードを POST に変更する必要がありますhttps://api.challonge.com/v1/tournaments/"+EVENT_ID+"/participants.json

于 2016-01-25T17:37:41.867 に答える