我想用firebase和REST API缩短一个longLink,但我得到了以下响应,我不知道出了什么问题:
回复:
{
"error": {
"code": 400,
"message": "Long link is not parsable: https://www.google.de [https://firebase.google.com/docs/dynamic-links/rest#create_a_short_link_from_parameters]",
"status": "INVALID_ARGUMENT"
}
}
我是这么做的
请求:https://firebasedynamiclinks.googleapis.com/v1/shortLinks?key=(hereismyapikey)
身体看起来像这样:
{
"longDynamicLink": "https://www.google.de",
"suffix": {
"option": "SHORT"
}
}
我尝试了第一次与真实的的网址,我想缩短.同样的错误.比与谷歌和有和没有http(s).我的选择,并希望有人看到我做错了这里.
**编辑:**完整的 Postman 请求:
"item": [
{
"name": "shortLinks",
"request": {
"method": "POST",
"header": [
{
"key": "Content-Type",
"value": "application/json"
}
],
"body": {
"mode": "raw",
"raw": "{\r\n \"longDynamicLink\": \"www.google.de\",\r\n \"suffix\": {\r\n \"option\": \"SHORT\"\r\n }\r\n}"
},
"url": {
"raw": "https://firebasedynamiclinks.googleapis.com/v1/shortLinks?key=xxx",
"protocol": "https",
"host": [
"firebasedynamiclinks",
"googleapis",
"com"
],
"path": [
"v1",
"shortLinks"
],
"query": [
{
"key": "key",
"value": "xxx"
}
]
}
},
"response": []
}
]
3条答案
按热度按时间yfjy0ee71#
您使用的是创建动态链接的简单方法,大致相当于手动创建动态链接:https://firebase.google.com/docs/dynamic-links/create-manually
在文档中,如果您仔细查看示例中传递的链接,您将看到以下模式:
因此,您应该根据此设置输入链接的格式,或者使用参数创建,这些参数在json中具有很好的参数分解:
https://firebase.google.com/docs/dynamic-links/rest#create_a_short_link_from_parameters
下面是从参数创建firebase动态链接的API参考:
https://firebase.google.com/docs/reference/dynamic-links/link-shortener#parameters
hwamh0ep2#
我发现JSON参数方法更容易。
然后如果你使用Node. node-fetch包REST调用将像这样工作:
wbgh16ku3#
您需要在longDynamicLink参数中包含Firebase动态链接使用的url。如果您的动态链接使用
https://myshorter.test
url,则longDynamicLink将变为https://myshorter.test?link=
,后跟您的url。举个例子