firebase 下载图像 url 编码错误
firebase downloading an image url encode error
我在 firebase 中存储了一些图像,firebase 给了我一个 url 来下载像这样的图像:
https://firebasestorage.googleapis.com/v0/b/afel-orders-mirror.appspot.com/o/stock_pictures%2F1000%2Falicate%20cortante%20electronica.jpg?alt=media&token=f2d54a3b-0526-4b9a-99ff-4c38c468757c
图片下载权限全开
我想通过 MercadoLibre (api.mercadolibre.com)
在另一台服务器上休息 api 上传图片
要上传图片我必须这样发送图片
{"source":"https://firebasestorage.googleapis.com/v0/b/afel-orders-mirror.appspot.com/o/stock_pictures%2F1000%2Falicate%20cortante%20electronica.jpg?alt=media&token=f2d54a3b-0526-4b9a-99ff-4c38c468757c"}
通过POST
问题是来自 mercadolibre 的服务器对 url 进行了编码,并破坏了 url 并且服务器尝试从此 url
下载图像
https://firebasestorage.googleapis.com/v0/b/afel-orders-mirror.appspot.com/o/stock_pictures%252F1000%252Falicate%2520cortante%2520electronica.jpg%3Falt%3Dmedia%26token%3Df2d54a3b-0526-4b9a-99ff-4c38c468757c
注意 %25
这个link给出以下错误
{
"error": {
"code": 404,
"message": "Not Found. Could not get object"
}
}
所以在 python 中我尝试解码第一个 url
https://firebasestorage.googleapis.com/v0/b/afel-orders-mirror.appspot.com/o/stock_pictures/1000/alicate cortante electronica.jpg?alt=media&token=f2d54a3b-0526-4b9a-99ff-4c38c468757c
(这个link给出了下面的错误)
{
"error": {
"code": 400,
"message": "Invalid HTTP method/URL pair."
}
}
当 mercadolibre 服务器对 url 进行编码时,我得到了原件,但问题是只有“/o/”之后的“/”应该转换为 %2F
我无法控制 url 编码(在 mercadolibre 服务器中是自动的),我该怎么做才能发送编码后的 url 我得到原始 url 格式有效??
谢谢。
作为解决方法,我使用 google api goo.gl 缩短了 url
这适用于 mercadolibre、facebook 或任何其他需要 url 才能上传图片的 api。
你好。
我在 firebase 中存储了一些图像,firebase 给了我一个 url 来下载像这样的图像:
https://firebasestorage.googleapis.com/v0/b/afel-orders-mirror.appspot.com/o/stock_pictures%2F1000%2Falicate%20cortante%20electronica.jpg?alt=media&token=f2d54a3b-0526-4b9a-99ff-4c38c468757c
图片下载权限全开
我想通过 MercadoLibre (api.mercadolibre.com)
在另一台服务器上休息 api 上传图片要上传图片我必须这样发送图片
{"source":"https://firebasestorage.googleapis.com/v0/b/afel-orders-mirror.appspot.com/o/stock_pictures%2F1000%2Falicate%20cortante%20electronica.jpg?alt=media&token=f2d54a3b-0526-4b9a-99ff-4c38c468757c"}
通过POST
问题是来自 mercadolibre 的服务器对 url 进行了编码,并破坏了 url 并且服务器尝试从此 url
下载图像https://firebasestorage.googleapis.com/v0/b/afel-orders-mirror.appspot.com/o/stock_pictures%252F1000%252Falicate%2520cortante%2520electronica.jpg%3Falt%3Dmedia%26token%3Df2d54a3b-0526-4b9a-99ff-4c38c468757c
注意 %25
这个link给出以下错误
{
"error": {
"code": 404,
"message": "Not Found. Could not get object"
}
}
所以在 python 中我尝试解码第一个 url
https://firebasestorage.googleapis.com/v0/b/afel-orders-mirror.appspot.com/o/stock_pictures/1000/alicate cortante electronica.jpg?alt=media&token=f2d54a3b-0526-4b9a-99ff-4c38c468757c
(这个link给出了下面的错误)
{
"error": {
"code": 400,
"message": "Invalid HTTP method/URL pair."
}
}
当 mercadolibre 服务器对 url 进行编码时,我得到了原件,但问题是只有“/o/”之后的“/”应该转换为 %2F
我无法控制 url 编码(在 mercadolibre 服务器中是自动的),我该怎么做才能发送编码后的 url 我得到原始 url 格式有效??
谢谢。
作为解决方法,我使用 google api goo.gl 缩短了 url 这适用于 mercadolibre、facebook 或任何其他需要 url 才能上传图片的 api。
你好。