关于微信授权的GET请求和POST请求问题

来源:10-3 使用微信授权接口实现静默和授权登录

david_Zhu

2017-07-19


public function actionLogin(){
  $scope = $this->get( "scope","snsapi_base" );
  $appid = \Yii::$app->params['weixin']['appid'];
  $redirect_uri = UrlService::buildMUrl( "/oauth/callback" );
  $url = "https://open.weixin.qq.com/connect/oauth2/authorize?appid={$appid}&redirect_uri={$redirect_uri}&response_type=code&scope={$scope}&state=#wechat_redirect";

  return $this->redirect( $url );
}


public function actionCallback(){
  $code = $this->get( "code","" );
  if( !$code ){
     return $this->goHome();
  }

  //通过code 获取网页授权的access_token
  $appid = \Yii::$app->params['weixin']['appid'];
  $sk = \Yii::$app->params['weixin']['sk'];
  $url = "https://api.weixin.qq.com/sns/oauth2/access_token?appid={$appid}&secret={$sk}&code={$code}&grant_type=authorization_code";

  $ret = HttpClient::get( $url );


老师你好,在获取静默登录授权的时候,以上两端代码都是用get请求来发送,为什么要用到curl的get请求,而不用redirect方法来实现呢?对curl理解比较浅,请老师解释一下,谢谢



写回答

2回答

编程浪子

2017-07-19

redirect是跳转,curl get是把数据取回来的,你跳转到另一个页面你怎么回到自己的域名

0
1
david_Zhu
哦哦,明白了,还有一个问题就是,开发者文档说,“redirect_uri授权后重定向的回调链接地址,请使用urlEncode对链接进行处理”,但是源码是没有处理的,不会出现地址错误吗?
2017-07-19
共1条回复

编程浪子

2017-07-19

redirect是跳转,curl get是把数据取回来的,你跳转到另一个页面你怎么回到自己的域名

0
0

微信服务号+Yii2.0构建商城系统全栈应用

传统PC后端与火热微信结合,打造一个摩登的商业电商系统

757 学习 · 744 问题

查看课程