将令牌附加到传出的 Http 请求,但找不到页面 [关闭]
Posted
技术标签:
【中文标题】将令牌附加到传出的 Http 请求,但找不到页面 [关闭]【英文标题】:Attaching the Token to Outgoing Http Requests but I got page not found [closed] 【发布时间】:2021-11-13 00:10:40 【问题描述】:我是 Flutter 的新手 当我向传出的 Http 请求添加令牌但找不到页面时。 你可以看到我在尝试 catch 块它显示错误并且我还打印 Http 状态码
它还打印 404 有什么解决办法
Future<void> fetchandSetProduct() async
var url = Uri.https('cakejaffna-default-rtdb.firebaseio.com',
'/cakelist.json?auth=$authToken');
try
final response = await http.get(url);
print(" ");
print(url);
print(response.statusCode);
final extractData = json.decode(response.body) as Map<String, dynamic>;
if (extractData == null)
return;
final List<Cake> loadedProduct = [];
print(extractData);
extractData.forEach((cakeId, cakeData)
loadedProduct.add(Cake(
id: cakeId,
imageUrl: cakeData['imageUrl'],
title: cakeData['title'],
hotelName: cakeData['hotelName'],
rating: cakeData['rating'],
ratecount: cakeData['ratecount'],
amount: cakeData['amount'],
details: cakeData['details'],
categories: cakeData['categories'] as List<dynamic>));
);
print("karan");
print(loadedProduct[0].imageUrl);
_cakeList = loadedProduct;
notifyListeners();
catch (error)
print(error);
print("rellay error");
【问题讨论】:
当我尝试访问相同的 URL (https://cakejaffna-default-rtdb.firebaseio.com/.json
) 时,我得到了 "error" : "Permission denied"
,这似乎是正确的。
是的,我得到了令牌,但我无法获取数据。 var url = Uri.https('cakejaffna-default-rtdb.firebaseio.com', '/cakelist.json?auth=$authToken');找不到此网址,状态码显示 404
啊,那么数据库存在吗?难道里面没有cakelist
节点?
这里,那个 fetchAndSetProduct 方法失败了,但我不知道为什么会这样?令牌有什么问题吗?但我有蛋糕清单
请看我的输出图片
【参考方案1】:
网址格式应该这样改变
final url = Uri.https('cakejaffna-default-rtdb.firebaseio.com',
'/cakelist.json', 'auth': '$authToken');
【讨论】:
以上是关于将令牌附加到传出的 Http 请求,但找不到页面 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
Angular HttpInterceptor 与 Github API 调用混淆