2

我的代码调用了一个名为 OneID 的服务。该代码是 javascript,它会提示您授权与站点共享您的电子邮件地址(存储在 OneID 存储库中)。

OneID 提示

如果用户单击“确定”,我需要将电子邮件地址返回到父页面。

现在,我能做的就是生成一个 javascript 警报。

注意如果您决定提供帮助,您需要创建一个 OneID 帐户,抱歉。

    <script src="https://api.oneid.com/form/form.js" type="text/javascript"></script>';

    echo '<script type="text/javascript">

    OneIdExtern.registerApiReadyFunction(
        function(){
            OneId.getUserAttributes(
                {
                    attr: "email[email]", 
                    authLevel : null, 
                    selectCards : true,
                    forceSelectCards : true
                },
                function(data){ 
                    if (data.attribute_data.email.email) {
                        <<-- somehow send data back to page? -->>
                    }
                }   
            );
        }
    );
    </script>';
4

1 回答 1

0

我怀疑您的问题是通知您刚刚输入的电子邮件的后端。我看到了两种方法:

  1. 如果用户有一个表单作为下一步验证,只需准备一个隐藏字段并将电子邮件存储在其中。将在验证表单时发布
  2. 实时,您可以在您的服务器上编写一个脚本并使用Jquery通过电子邮件调用它(在您发表评论的地方:<<-- 以某种方式将数据发送回页面?-->>)。如果你需要匹配服务器信息,那么你可能需要维护一个会话。

更重要的是:如果不受跨域问题的限制,您可以直接在 javascript 中进行调用,而不是从后端卷曲。

于 2013-06-19T08:59:39.673 回答