# #flutter #dart #google-cloud-functions #dart-http
Вопрос:
ПРАВКА: Добавляет к проблеме, что мне нужно получить uri из этого URL-адреса:
https://us-central1-cam.cloudfunctions.net/create
Обычно я использую Uri.parse или Uri.https, но ни один из них не работает (я думаю) из-за us-central1-cam. перед хостом cloudfunctions.net. Есть ли шанс, что для этого формата есть название? Язык-это стрела. Тип, необходимый API, — это карта, содержащая строки или одну строку, если путь отсутствует.
Вот мой код:
»’
onTap: () async {
final parameters = {
"response_type": "code",
"client_id":
"57",
"redirect_uri": {
Uri.encodeComponent(
"https://us-central1-41915.cloudfunctions.net"),
"/create",
},
),
"state": "heo5jt,9wv5jDRANCWX,kdrjghgyqw.c/w,",
"scope": "wallet:accounts:create,"
"wallet:addresses:create,"
"wallet:transactions:request",
};
final uri = Uri.https(
"www.coinbase.com", "/oauth/authorize", parameters);
print(uri);
final response = await http.get(uri);
print(response.body);
},
»’
Ошибка в том, что API не принимает это. Тем не менее, этот синтаксис работает (но это не та страница, только для тестирования): «‘»redirect_uri»: {
«https://1×1.photo»,
«/главная»,
},»‘
Комментарии:
1.
URI.parse()
Не работает? Если вы опубликуете некоторый код с ожидаемым результатом и описанием того, почему он не работает (например, выдает ошибку, неверный вывод и т. Д.), Вам будет легче ответить на вопрос2. @cameron1024 Я добавил все, что вы предложили
3.
Uri.https
будет автоматически кодировать свой параметр запросаMap
. Ваш явный вызовUri.encodeComponent
приведет к двойному кодированию.