asJson([ 'code' => 1, 'msg' => $res['response']['errmsg'], ]); } return $this->asJson([ 'code' => 0, 'msg' => 'success', 'data' => $res['url_path'] . "?time=" . time(),//解决切换小程序appid后,前端图片显示的是旧的图片 ]); } catch (\Exception $e) { return $this->asJson([ 'code' => 1, 'msg' => $e->getMessage(), 'file' => $e->getFile(), 'line' => $e->getLine(), ]); } } /** * 登录 * * @return void */ public function actionWxLogin() { set_time_limit(0); $appid = Option::get('platform_appid', 0, 'saas')['value'] ?? ''; if (empty($appid)) { return $this->asJson([ 'code' => 1, 'msg' => '请先配置联盟小程序appid', ]); } $url = $this->url . 'login.php'; $host = str_replace(['http://', 'https://'], ['', ''], \Yii::$app->request->hostInfo); $ws_url = isset(\Yii::$app->params['ws_url']) ? \Yii::$app->params['ws_url'] : 'ws.cyyvip.com'; $res = http_get($url, [ 'query' => [ 'type' => 'shangmeng', 'appid' => $appid, 'http_url' => $host, 'version' => cyy_version(), 'ws_url' => $ws_url, ] ]); if ($res->getStatusCode() != 200) { return $this->asJson([ 'code' => 1, 'msg' => '请求出错!', ]); } $content = json_decode((string)$res->getBody()); return $this->asJson($content); } /** * 获取预览码 * * @return void */ public function actionPreview($num = 1) { set_time_limit(0); try { $appid = Option::get('platform_appid', 0, 'saas')['value'] ?? ''; if (empty($appid)) { return $this->asJson([ 'code' => 1, 'msg' => '请先配置联盟小程序appid', ]); } $url = $this->url . 'preview.php'; $host = str_replace(['http://', 'https://'], ['', ''], \Yii::$app->request->hostInfo); $res = http_get($url, [ 'query' => [ 'type' => 'shangmeng', 'appid' => $appid, 'http_url' => $host, 'version' => cyy_version(), ] ]); if ($res->getStatusCode() != 200) { if ($num < 4) { return $this->actionPreview($num + 1); } else { return $this->asJson([ 'code' => 1, 'msg' => '请求出错!', ]); } } $content = json_decode((string)$res->getBody()); return $this->asJson($content); } catch (\Exception $e) { if ($num < 4) { return $this->actionPreview($num + 1); } else { return $this->asJson([ 'code' => 1, 'msg' => '请求出错!', ]); } } } /** * 上传小程序 * * @return void */ public function actionUpload() { set_time_limit(0); $appid = Option::get('platform_appid', 0, 'saas')['value'] ?? ''; if (empty($appid)) { return $this->asJson([ 'code' => 1, 'msg' => '请先配置联盟小程序appid', ]); } $url = $this->url . 'upload.php'; $host = str_replace(['http://', 'https://'], ['', ''], \Yii::$app->request->hostInfo); $res = http_get($url, [ 'query' => [ 'type' => 'shangmeng', 'appid' => $appid, 'http_url' => $host, 'version' => cyy_version(), ] ]); if ($res->getStatusCode() != 200) { return $this->asJson([ 'code' => 1, 'msg' => '请求出错!', ]); } $content = json_decode((string)$res->getBody()); return $this->asJson($content); } }