master
fengyuexingzi 7 years ago
parent 1773cd6b2e
commit 56fe101227

@ -2,16 +2,13 @@
namespace App\Http\Controllers\Api; namespace App\Http\Controllers\Api;
use App\User;
use Carbon\Carbon; use Carbon\Carbon;
use Illuminate\Foundation\Auth\AuthenticatesUsers; use Illuminate\Foundation\Auth\AuthenticatesUsers;
use Illuminate\Support\Facades\Auth;
use Laravel\Passport\Client;
use Socialite;
use GuzzleHttp\Client as HttpClient;
use App\User;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Socialite;
use Validator; use Validator;
use EasyWeChat\Factory; use EasyWeChat;
class AuthenticateController extends ApiController class AuthenticateController extends ApiController
{ {
@ -32,14 +29,15 @@ class AuthenticateController extends ApiController
public function easyWechatGetSession($code) public function easyWechatGetSession($code)
{ {
$config = config('wechat.mini_program.default'); // $config = config('wechat.mini_program.default');
$app = Factory::miniProgram($config); // $app = Facade::miniProgram($config);
return $app->auth->session($code); // return $app->auth->session($code);
} }
/** /**
* 处理小程序的自动登陆和注册 * 处理小程序的自动登陆和注册
* @param $oauth * @param Request $request
* @return mixed
*/ */
public function auto_login(Request $request) public function auto_login(Request $request)
{ {
@ -48,6 +46,12 @@ class AuthenticateController extends ApiController
$wx_info = $this->easyWechatGetSession($request->code); $wx_info = $this->easyWechatGetSession($request->code);
} }
$mini = EasyWeChat::miniProgram();
return $wx_info;
if (!$request->openid && empty($wx_info['openid'])) { if (!$request->openid && empty($wx_info['openid'])) {
return $this->failed('用户openid没有获取到', 401); return $this->failed('用户openid没有获取到', 401);
} }

@ -25,7 +25,7 @@ class AuthServiceProvider extends ServiceProvider
public function boot() public function boot()
{ {
$this->registerPolicies(); $this->registerPolicies();
Passport::routes(); Passport::routes();
//
} }
} }

@ -4,9 +4,9 @@ namespace App;
use App\Models\Dorm; use App\Models\Dorm;
use App\Models\ServiceRange; use App\Models\ServiceRange;
use Laravel\Passport\HasApiTokens;
use Illuminate\Notifications\Notifiable;
use Illuminate\Foundation\Auth\User as Authenticatable; use Illuminate\Foundation\Auth\User as Authenticatable;
use Illuminate\Notifications\Notifiable;
use Laravel\Passport\HasApiTokens;
class User extends Authenticatable class User extends Authenticatable
{ {

@ -9,13 +9,13 @@
"doctrine/dbal": "^2.5", "doctrine/dbal": "^2.5",
"encore/laravel-admin": "1.5.*", "encore/laravel-admin": "1.5.*",
"fideloper/proxy": "~3.3", "fideloper/proxy": "~3.3",
"jacobcyl/ali-oss-storage": "^2.0",
"laravel/framework": "5.5.*", "laravel/framework": "5.5.*",
"laravel/passport": "~4.0", "laravel/passport": "~4.0",
"laravel/tinker": "~1.0", "laravel/tinker": "~1.0",
"overtrue/laravel-wechat": "~4.0",
"jacobcyl/ali-oss-storage": "^2.0",
"orangehill/iseed": "dev-master", "orangehill/iseed": "dev-master",
"xethron/migrations-generator":"^2.0" "overtrue/laravel-wechat": "^4.0",
"xethron/migrations-generator": "^2.0"
}, },
"require-dev": { "require-dev": {
"filp/whoops": "~2.0", "filp/whoops": "~2.0",

71
mini/app.js vendored

@ -1,34 +1,57 @@
var util = require('./utils/util.js'); var util = require('./utils/util.js');
var api = require('./config/api.js'); var api = require('./config/api.js');
var user = require('./services/user.js'); var user = require('./services/user.js');
App({ App({
onLaunch: function () { onLaunch: function () {
// wx.getLocation({
// success: function(res) {
// console.log(res);
// },
// })
// wx.openLocation({
// latitude: 35.06151,
// longitude: 118.33705,
// success: res => {
// console.log('ai');
// },
// fail: error => {
// console.log(error);
// }
// })
// wx.chooseLocation({
// success: function(res) {
// console.log(res);
// },
// })
// 获取用户信息 // 获取用户信息
wx.getSetting({ // wx.getSetting({
success: res => { // success: res => {
if (res.authSetting['scope.userInfo']) { // if (res.authSetting['scope.userInfo']) {
// 已经授权,可以直接调用 getUserInfo 获取头像昵称,不会弹框 // // 已经授权,可以直接调用 getUserInfo 获取头像昵称,不会弹框
wx.getUserInfo({ // wx.getUserInfo({
success: res => { // success: res => {
console.log('success'); // console.log('success');
// 可以将 res 发送给后台解码出 unionId // // 可以将 res 发送给后台解码出 unionId
this.globalData.userInfo = res.userInfo // this.globalData.userInfo = res.userInfo
// 由于 getUserInfo 是网络请求,可能会在 Page.onLoad 之后才返回 // // 由于 getUserInfo 是网络请求,可能会在 Page.onLoad 之后才返回
// 所以此处加入 callback 以防止这种情况 // // 所以此处加入 callback 以防止这种情况
if (this.userInfoReadyCallback) { // if (this.userInfoReadyCallback) {
this.userInfoReadyCallback(res) // this.userInfoReadyCallback(res)
} // }
}, // },
fail: error => { // fail: error => {
console.log('error:'); // console.log('error:');
} // }
}) // })
} // }
} // }
}); // });
wx.login({ wx.login({
success: function (res) { success: function (res) {
@ -36,7 +59,7 @@ App({
if (res.code) { if (res.code) {
//发起网络请求 //发起网络请求
wx.request({ wx.request({
url: 'https://mp.fengyuexingzi.top/api/login', url: 'http://127.0.0.1:8000/api/login',
data: { data: {
code: res.code code: res.code
}, },

@ -55,12 +55,6 @@
"selectedIconPath": "static/images/ic_menu_choice_pressed.png", "selectedIconPath": "static/images/ic_menu_choice_pressed.png",
"text": "首页" "text": "首页"
}, },
{
"pagePath": "pages/topic/topic",
"iconPath": "static/images/ic_menu_topic_nor.png",
"selectedIconPath": "static/images/ic_menu_topic_pressed.png",
"text": "专题"
},
{ {
"pagePath": "pages/catalog/catalog", "pagePath": "pages/catalog/catalog",
"iconPath": "static/images/ic_menu_sort_nor.png", "iconPath": "static/images/ic_menu_sort_nor.png",

@ -1,4 +1,5 @@
const ApiRootUrl ='https://mp.fengyuexingzi.top/api/'; //const ApiRootUrl ='https://mp.fengyuexingzi.top/api/';
const ApiRootUrl = 'http://127.0.0.1:8000/api/';
module.exports = { module.exports = {
IndexUrl: ApiRootUrl + 'index', //首页数据接口 -- IndexUrl: ApiRootUrl + 'index', //首页数据接口 --

@ -39,7 +39,7 @@ Page({
}); });
}, },
onLoad: function (options) { onLoad: function (options) {
this.getIndexData(); //this.getIndexData();
}, },
onReady: function () { onReady: function () {
// 页面渲染完成 // 页面渲染完成

@ -60,7 +60,7 @@
.a-section .h .txt { .a-section .h .txt {
padding-right: 30rpx; padding-right: 30rpx;
background: url("http://ac-3yr0g9cz.clouddn.com/2cdba05369e10f934e54.png") right 4rpx no-repeat; background: url("https://www.baidu.com/img/bd_logo1.png") right 4rpx no-repeat;
background-size: 16.656rpx 27rpx; background-size: 16.656rpx 27rpx;
display: inline-block; display: inline-block;
height: 36rpx; height: 36rpx;

@ -112,6 +112,7 @@ function checkSession() {
* 调用微信登录 * 调用微信登录
*/ */
function login() { function login() {
console.log('util login');
return new Promise(function (resolve, reject) { return new Promise(function (resolve, reject) {
wx.login({ wx.login({
success: function (res) { success: function (res) {

@ -18,6 +18,10 @@ Route::middleware('auth:api')->get('/user', function (Request $request) {
}); });
Route::namespace('Api')->group(function () { Route::namespace('Api')->group(function () {
// 用户登录
Route::any('/login','AuthenticateController@auto_login')->name('login');
// 在 "App\Http\Controllers\Api" 命名空间下的控制器 // 在 "App\Http\Controllers\Api" 命名空间下的控制器
Route::any('/order-notify','PaymentController@notify'); Route::any('/order-notify','PaymentController@notify');
// 项目估价json // 项目估价json
@ -25,7 +29,6 @@ Route::namespace('Api')->group(function () {
Route::any('/project_json/func-types', 'ProjectJsonController@getProjectFuncTypesByTypeId'); Route::any('/project_json/func-types', 'ProjectJsonController@getProjectFuncTypesByTypeId');
Route::any('/project_json/models', 'ProjectJsonController@getProjectModelsByFunctypeId'); Route::any('/project_json/models', 'ProjectJsonController@getProjectModelsByFunctypeId');
// 需要用户信息的 // 需要用户信息的
Route::middleware('auth:api')->group(function () { Route::middleware('auth:api')->group(function () {
Route::get('/index','IndexController@index'); Route::get('/index','IndexController@index');
@ -99,8 +102,6 @@ Route::namespace('Api')->group(function () {
Route::get('/footprint-list','ShopFootprintController@getList');// 获取足迹列表 Route::get('/footprint-list','ShopFootprintController@getList');// 获取足迹列表
}); });
Route::any('/login','AuthenticateController@auto_login')->name('login');
// 测试小程序登录 // 测试小程序登录
Route::any('mini',function(Request $request){ Route::any('mini',function(Request $request){
$mini = EasyWeChat::miniProgram(); $mini = EasyWeChat::miniProgram();

Loading…
Cancel
Save