SSO进入Bigcommerce

时间:2015-06-04 22:36:12

标签: single-sign-on bigcommerce

我正在尝试编写一个php应用程序,当用户登录我的网站时将用户签入BigCommerce。我无法在登录或SSO的API文档中看到任何内容。有人有指向这个文档的指针吗?

2 个答案:

答案 0 :(得分:1)

好吧,我已经尝试过试用这个问题,我找到的唯一方法就是使用隐藏的iframe和简单的javascript。这对我有用,参见示例:

<!DOCTYPE HTML>
<html>
<head>
    <meta http-equiv="content-type" content="text/html" />
    <title>Login BC</title>
    <style type="text/css">
    input[type="text"],input[type="password"],input[type="submit"],button{
        display: block;
        padding:4px 6px;
        margin: 12px 8px;
        border: 1px solid #eee;
    }
    input[type="text"],input[type="password"]{
        width:200px;
    }
    input[type="submit"],button{
        cursor:pointer;
    }
    #ifr{
        display: none;
    }
    </style>
    <script type="text/javascript" src="http://code.jquery.com/jquery-1.11.3.min.js"></script>
    <script type="text/javascript">
        $(document).ready(function(){
            var redirect={
                data:{
                    url:'http://yourstore.mybigcommerce.com/login.php?action=check_login',
                    redirect:'http://yourstore.mybigcommerce.com/account.php?action=account_details',
                    login:'customerlogin',
                    pass:'customerpassword'},
                form:function(){
                    var f='<form method="post" id="bc" action="'+redirect.data.url+'">'+
                        '<input type="text" name="login_email" value="'+redirect.data.login+'"/>'+
                        '<input type="password" name="login_pass" value="'+redirect.data.pass+'" />'+
                        '<input type="submit" value="Login"  />'+
                    '</form>';
                    $('iframe#ifr').contents().find('html > body').html(f);
                    $('#ifr').contents().find('form#bc').submit();

                },
                events:function(){
                    $('#send').on('click',function(){
                        redirect.form();
                        setTimeout(function(){
                            $('section').append('<button id="goto">Go To Bigcommerce</button>');
                        },1500);
                    });
                    $(document).on('click','#goto',function(){
                        window.location = redirect.data.redirect;
                    });
                }
            };
            redirect.events();
        })
    </script>
</head>

<body>

<div class="content">
<section>
    <button id="send">Auto Login</button>
</section>
</div>
<iframe id="ifr"></iframe>
</body>
</html>

答案 1 :(得分:0)

任何仍希望做类似事情的人现在可以查看基于JWT的客户登录API(https://developer.bigcommerce.com/api/v2/#customer-login-api)。

结合API的客户读写端点,它应该允许外部应用程序从外部应用程序创建和登录客户。