Ошибка Microsoft Cognitive Services Face API для Java Создание группы пользователей

Этот код для создания группы лиц с помощью Java.

import java.net.URI;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.utils.URIBuilder;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;

public class JavaSample 
{
    public static void main(String[] args) 
    {
        HttpClient httpclient = HttpClients.createDefault();

        try
        {
            URIBuilder builder = new URIBuilder("https://api.projectoxford.ai/face/v1.0/persongroups/personGroupId");


            URI uri = builder.build();
            HttpPut request = new HttpPut(uri);
            request.setHeader("Content-Type", "application/json");
            request.setHeader("Ocp-Apim-Subscription-Key", "mysubscriptionkey");


            // Request body
            StringEntity reqEntity = new StringEntity("{body}");
            request.setEntity(reqEntity);

            HttpResponse response = httpclient.execute(request);
            HttpEntity entity = response.getEntity();

            if (entity != null) 
            {
                System.out.println(EntityUtils.toString(entity));
            }
        }
        catch (Exception e)
        {
            System.out.println(e.getMessage());
        }
    }
}

Когда я запускаю этот код, я получаю эту ошибку:

{"error":{"code":"BadArgument","message":"Тело запроса недействительно."}}

Что я могу сделать, чтобы исправить это. Я не нашел пример создания группы пользователей с помощью java в Интернете, поэтому не могу его исправить.


person o_O    schedule 09.09.2016    source источник


Ответы (1)


Как следует из ошибки, тело HTTP-запроса искажено как {body}.

Просмотрите страницу API в разделе Тело запроса. Вы должны указать имя и при желании можете добавить пользовательские данные.

StringEntity reqEntity = new StringEntity("{" +
    "\"name\":\"group1\"," +
    "\"userData\":\"user-provided data attached to the person group\""+
"}") 

Дополнительные примеры Java можно найти на странице GitHub SDK.

person cthrash    schedule 10.09.2016