使用React本机打开来自邮件的链接时,使用sendGrid集成问题与Brnach.IO深度链接作为传递params是未定义的

时间:2018-05-17 06:33:52

标签: react-native sendgrid deep-linking branch.io

目标

我发送的电子邮件与Branch.IO的深层链接实现与sendGrid集成。当用户点击链接我的反应原生应用程序在手机中打开并根据我在API中创建链接期间提供的URL中的查询参数将我重定向到屏幕。

问题

我可以从链接打开应用程序,但我在链接中提供的查询参数显示为空白。所以我无法打开我想在应用程序中重定向到用户的屏幕。

branch.subscribe(({ params, error, uri }) => {
  if (error) {
    console.log('Error from Branch: ' + error)
    return
  }
  console.log("params :: ", params);
  if(params.reset) {
    // Redirect user to reset password screen
    console.log("params.reset :: " + params.reset);
    Actions.resetpassword({resetToken: params.reset});
  } else if(params.verify) {
    // Verify signup user
    axios.post('http://localhost:3030/authmanagement', {
        "action":"verifySignupLong",
        "value": params.verify
      }).then(response => {
          Actions.login({isVerifySuccess: true});
      }, error => {
        Actions.login();
      });
  }
});

我已将此代码编写为Branch.IO文档的建议。在参数中,我发送了重置和验证令牌,我将其作为空白字符串。

信息

此代码在深度链接中未与sendGrid集成。但对于邮件跟踪我使用sendGrid。因此,当我尝试使用sendGrid发送电子邮件时,会产生问题。

我在SendGrid帐户中设置了链接品牌,并在我的域中添加了CNAME,如sendGrid集成指令中给出的深度链接。

我在Redirect Detective portal

中检查了邮寄链接

我已经验证了链接,它会生成带有参数的有效网址。请查看下图以获得更多说明

Image for Redirect Detective

1 个答案:

答案 0 :(得分:0)

来自Branch的Jackie。

根据您的重定向链接,SendGrid集成似乎存在问题。您是否可以按照说明here

确保正确设置您的集成

在某些情况下,这就是您的电子邮件模板中的链接:http://example.com/?foo=bar

当用户点击电子邮件中的链接时,分支会处理该链接并将其转换为以下内容:

https://vza3.app.link/3p?%243p=e_xx&%24original_url=http%3A%2F%2Fexample.com%2F%3Ffoo%3Dbar

(Where vza3.app.link is your Branch domain.)

此外,为了让SendGrid知道电子邮件链接应该深层链接并打开应用程序,请在HTML中添加universal =“true”,如下所示:

<a href="http://example.com" universal="true">Link to your app!</a>

如果您仍然遇到通过SendGrid电子邮件跟踪传递深层链接数据的问题,请直接通过integrations@branch.io与您的Branch键和您正在使用的链接联系。