使用jQuery Ajax Post的Firebase URL Shortener?

时间:2017-11-21 08:38:02

标签: javascript jquery firebase firebase-dynamic-links

我是Firebase的新手。我试图利用动态链接。这就是我到目前为止......

    var longUrl = 'https://example.com/' + window.location.hash;
    var APIkey  = 'My Web API Key Here';
    var url     = 'https://firebasedynamiclinks.googleapis.com/v1/shortLinks?key=' + APIkey;

    var data = {
        "longDynamicLink": "https://abc123.app.goo.gl/?link=" + longUrl,
        "suffix": {
            "option": "SHORT"
        }
    };

    var request = $.ajax({
        url: url,
        dataType: 'json',
        type: 'post',
        contentType: 'application/json',
        data: JSON.stringify(data),
        processData: false,
        success: function( data, textStatus, jQxhr ){
            console.log(data);
            console.log(textStatus);
            console.log(jQxhr);
        },
        error: function( jqXhr, textStatus, errorThrown ){
            console.log( errorThrown );
        }
    });

我得到400错误......

code:400
message:"Your project has not configured Dynamic Links. [https://firebase.google.com/docs/dynamic-links/rest#before_you_begin]"
status:"INVALID_ARGUMENT"

未配置动态链接是什么意思?是" abc123"只是一个占位符?

2 个答案:

答案 0 :(得分:1)

有同样的问题 - 那就是我从firebase团队得到的答案:

  

请注意,为了能够查看您的动态链接域,您必须先添加应用。如果您使用Firebase动态链接替代Google Shortener,则可以为项目创建示例应用程序(虚拟应用),以继续创建Firebase动态链接。只需输入iOS包ID或Android包名称的虚拟值(例如:“my.dummy.app”)即可继续。

然后你会把你从中得到的身份证明(例如https://dedfgu.app.goo.gl)  而不是占位符(abc123.app.goo.gl)。

祝你好运!

答案 1 :(得分:0)

abc123是一个占位符。您应该提供Firebase动态链接域而不是abc123

例如,请参阅此处https://firebase.google.com/docs/dynamic-links/ios/create说明什么是项目的动态链接域。域看起来像app_code.app.goo.gl,其中app_code对每个Firebase项目都是唯一的。