Я использую Uber API внутри Unity, и я могу войти в систему, а затем аутентифицироваться, чтобы получить токен, но я столкнулся с препятствием при вызове фактического API.
Я считаю, что моя проблема в том, что мне нужно делать вызов в формате JSON, но я не знаю, как это сделать. Я новичок в HTTP и API в целом. Вот мой код:
private IEnumerator TestRequest(){
Debug.Log(sToken);
WWWForm form = new WWWForm();
//WWW www = new WWW();
form.headers["Content-Type"] = "application.json";
form.headers["Authorization"] = "Bearer " +sToken;
form.AddField( "fare_id", "abcd");
form.AddField("product_id", "a1111c8c-c720-46c3-8534-2fcdd730040d");
form.AddField("start_latitude", "37.761492");
form.AddField("start_longitude", "-122.42394");
form.AddField("end_latitude", "37.775393");
form.AddField("end_longitude", "-122.417546");
yield return null;
using(UnityWebRequest uweb = UnityWebRequest.Post("https://sandbox-
api.uber.com/v1.2/requests", form)){
yield return uweb.Send();
if(uweb.isError) Debug.Log(uweb.error);
else Debug.Log(uweb.downloadHandler.text);
//GetVals(uweb.downloadHandler.text);
}
}
Это работает для меня в других областях, но не в этой, и я думаю, что это как-то связано с типом контента JSON, но я не могу понять, как отправить его в правильном формате. Извините, что я не могу быть более конкретным, я только разбираюсь в этом.
Любая помощь будет принята с благодарностью!
form.headers["Content-Type"] = "application/json"
(обратите внимание на косую черту вместо точки) - person Charlyn G   schedule 05.05.2017sToken
токеном сервера? Если это так, то эта строка должна быть:form.headers["Authorization"] = "Token " +sToken;
- person Charlyn G   schedule 05.05.2017