javascript – PayPal重定向到同一个弹出窗口

前端之家收集整理的这篇文章主要介绍了javascript – PayPal重定向到同一个弹出窗口前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在我的网页中集成了PayPal的Identity API.像往常一样,当用户点击使用paypal( JavaScript button)登录时,它会打开一个用于登录目的的新窗口.但在有效登录后,它会将我重定向到同一个弹出窗口.

注意:我将域名替换为域名

应用返回网址(测试):http://domain.esy.es/index.php/users/paypalidentity

视图

  1. //url http://domain.esy.es/index.PHP
  2. <span id="paypalButton"></span>
  3. <script src="https://www.paypalobjects.com/js/external/api.js"></script>
  4. <script>
  5. paypal.use( ["login"],function(login) {
  6. login.render ({
  7. "appid": MYAPPID,"authend": "sandBox","scopes": "openid email profile address phone https://uri.paypal.com/services/paypalattributes","containerid": "paypalButton","locale": "en-us","returnurl": "http://domain.esy.es/index.PHP/users/paypalidentity"
  8. });
  9. });
  10. </script>

调节器

  1. //url http://domain.esy.es/index.PHP/users/paypalidentity
  2. require_once __DIR__ . '/../../vendor/autoload.PHP';
  3. $apicontext = new PPApiContext(array('mode' => 'sandBox'));
  4. $code = $_REQUEST['code'];
  5. $apicontext = new PPApiContext(array('mode' => 'sandBox'));
  6. $params = array(
  7. 'client_id' => MYCLIENTID,'client_secret' => MYSECRET,'code' => $code
  8. );
  9. $token = PPOpenIdTokeninfo::createFromAuthorizationCode($params,$apicontext);
  10. $apicontext = new PPApiContext(array('mode' => 'sandBox'));
  11. $params = array('access_token' => $token->getAccessToken());
  12. $user = PPOpenIdUserinfo::getUserinfo($params,$apicontext);
  13. $this->session->set_userdata(
  14. array(
  15. 'name'=>$user->getName()
  16. )
  17. );
  18. redirect(base_url());

成功登录

重定向到配置的重定向URL

解决方法

我有确切的问题,但解决方案在这里的文档中:

https://developer.paypal.com/docs/classic/express-checkout/digital-goods/ClosingWindow/

请参阅“将父页面重新加载到特定URL”并将此脚本添加到返回和取消页面.

  1. <script>
  2. top.window.opener.location ='http://your-url-here.html';
  3. // if you want to close the window
  4. // window.close();
  5. </script>

猜你在找的JavaScript相关文章