说明:1,运行环境  laravel 5.3 php7+nginx+mysql

   2,使用安装包  https://github.com/goodspb/laravel5-ucenter  上面有对接方法

对接过程遇见的问题:1,问题:在laravel配置了UCenter的config之后,在UCenter的用户中心还是通信失败。解决:laravel的路由配置不正确

          2,问题:laravel无法对接UCenter的数据库。解决:在PHP7中已经废弃的函数mysql_connect(),GitHub的作者依然在使用,然后手动改成了mysqli_connect(),所有牵扯到的函数增加一个 " i "即可。在文件src/uc_client/lib/db.class.php

          3,问题:php7无法调用自己的函数。解决:在UCenterApi中第70行左右  改成 $actions = $get['action'];  return self::$actions($get, $post);

UCenter在laravel的用法:1,引用:use Goodspb\Laravel5Ucenter\Ucenter;2,$ucresult  = Ucenter::execute('uc_user_checkname',[$username]);

UCenter接口(以下都是用户接口)

1,uc_user_register()   integer uc_user_register(string username , string password , string email [, integer questionid , string answer , string regip])

描述:本接口函数用于新用户注册。用户名、密码、Email为一个用户在UCenter的基本数据,提交后UCenter会按照注册设置和词语过滤的规则检测用户名和Email的格式时候正确合法,如果正确返回注册后的用户ID,否则返回相应的错误信息

参数

参数名   类型 是否必需 说明
username string 用户名
password string 密码
email string 电子邮箱
questionid integer 安全提问索引
answer string 安全提问答案
regip string 注册ip

返回值

返回值类型 说明
integer

大于0:返回用户ID,表示用户注册成功

-1:用户名不合法

-2:包含不允许注册的词语

-3:用户名已经存在

-4:Email格式有误

-5:Email不允许注册

-6:该Email已经被注册

2,uc_user_login()  array uc_user_login(string username , string password [, bool isuid , bool checkques , integer questionid , string answer])

描述:本接口函数用户用户登录验证,用户名及密码正确无误则返回用户在UCenter的基本数据,否则返回相应的错误信息。如果应用程序是升级过来的,并且当前登录用户和已有的用户重名,那么返回数组中[4]的值将返回1.

参数

参数名 类型 是否必需 说明 备注
username string 用户名/用户ID/用户 Email  
password string 密码  
isuid bool 是否使用用户ID登录

1:使用用户ID登录

2:使用用户Email登录

0:(默认值)使用用户名登录

checkques bool 是否验证安全提问

1:验证安全提问

0:(默认值)不验证安全提问

questionid intger 安全提问索引  
answer string 安全提问索引  

返回值:返回值类型:array 。说明:成功返回用户信息,失败返回错误代码 。数组结构看下方说明

key 类型 value
0 integer

大于0:返回用户ID,表示用户登录成功

-1:用户不存在或者被删除

-2:密码错误

-3:安全问题错误

1 string 用户名
2 string 密码
3 string Email
4 bool 用户名是否重名

3,uc_get_user    array  uc_get_user(string username[,bool isuid])

描述:本接口函数用于获取用户在UCenter的基本数据,如果用户不存在,返回值为integer的数值0。

参数:

参数名 类型 是否必需 说明 备注
username string 用户名  
isuid bool 是否使用用户名ID获取

1:使用用户ID获取

0:(默认值)使用用户名获取

返回值:返回值类型:array 。说明:成功返回用户信息,失败返回错误代码 。数组结构看下方说明

key 类型 value
0 integer 用户ID
1 string 用户名
2 string Email

4,uc_user_edit  integer uc_user_enit(string username,string oldpwd,string newpw,string Email[,bool ignoreoldpw,integer questionid,string answer])

描述:本接口函数用户更新用户资料。更新资料需要验证用户的原密码是否正确,除非指定ignoreoldpw为1.如果只修改Email不修改密码,可让newpw为空;同理如果只修改密码不修改Email,可让Email为空。

参数:

参数名 类型 是否必需 说明 备注
username string 用户名  
oldpw string 旧密码  
newpw string 新密码,如不修改为空  
email string Email,如不修改为空  
ignoreoldpw bool 是否忽略旧密码

1:忽略,更改资料不需要验证密码

0:(默认值)不忽略,更改资料需要验证密码

questionid integer 安全提问索引  
answer string 安全提问答案  

返回值:

返回值类型 说明
integer

1:更新成功

0:没有做任何修改

-1:旧密码不正确

-4:Email格式有误

-5:Email不允许注册

-6:该Email已经被注册

-7:没有做任何修改

-8:该用户受保护无权限更改

参考文件链接:http://codex.wordpress.org.cn/UCenter接口

剩余问题:在网站和论坛对接的同步登陆的时候,论坛同步登陆了,网站不能没有登录信息,在设置cookie域和cookie路径的时候。不知道怎么设置。

laravel 对接 UCenter 基础的更多相关文章

  1. laravel基础课程---1、laravel安装及基础介绍(laravel如何安装)

    laravel基础课程---1.laravel安装及基础介绍(laravel如何安装) 一.总结 一句话总结: [修改composer镜像地址].[明确laravel的安装要求].[安装指定版本的la ...

  2. Scrapy对接Splash基础知识学习

    一:什么是Splash Splash是一个 JavaScript渲染服务,是一个带有 HTTPAPI 的轻量级浏览器 1 功能介绍 利用 Splash,我们可以实现如下功能: 口异步方式处理多个网页渲 ...

  3. laravel 对接支付宝

    使用的库 omnipay-alipay 申请支付宝支付 这个就不说了, 不明白如何下手的伙伴让运营去和支付宝客服联系吧 composer 安装git库 将以下代码添加到 composer.json { ...

  4. 【转】基于laravel制作APP接口(API)

    这篇文章主要介绍了基于laravel制作APP接口(API)的相关资料,需要的朋友可以参考下 前期准备 前言,为什么做以及要做个啥本人姓小名白,不折不扣编程届小白一名,但是自从大一那会儿接触到编程这件 ...

  5. Windows2012中安装PHP-5.6.20+Apache httpd2.4.18+Composer+Laravel+MySQL5.7

    下载软件包 PHP:  http://windows.php.net/downloads/releases/php-5.6.20-Win32-VC11-x64.zip Apache httpd:  h ...

  6. laravel项目使用appnode部署linux系统到阿里云服务器流程记录(待补充)

    使用 SSH 连接工具,如 PuTTY.XShell.SecureCRT 等,连接 Linux 服务器后(阿里云服务器命令行内直接输入appnode安装命令,版本:mysql选5.7.php选7.2) ...

  7. 6个项目带你全面掌握Laravel框架

    Laravel框架简介: Laravel是一套简洁.优雅的PHP Web开发框架(PHP Web Framework).它可以让你从面条一样杂乱的代码中解脱出来,帮你构建一个完美的网络APP,而且每行 ...

  8. laravel 资源篇

    转自:https://github.com/qianyugang/learn-laravel # Learn-Laravel — 学习资料和开源项目集 ## Laravel 学习资料 ### 官方网站 ...

  9. ecshop微信接口基础认识

    ecshop微信接口基础认识,当你要学习ecshop和微信整合的时候,你就必须研究ecshop的数据结构对接以及微信数据接口的基本知识.我们知道微信其实就是通过有效的消息推送,用JSON格式的数据或者 ...

随机推荐

  1. alias命令详解

    1.简介: 设置指令的别名,用户可利用alias,自定指令的别名.若仅输入alias,则可列出目前所有的别名设置. alias的效力仅及于该次登入的操作.若要每次登入是即自动设好别名,可在/etc/p ...

  2. 如何在ubuntu中安装php

    如何在ubuntu中安装php 情衅 | 浏览 692 次 发布于2016-05-07 12:36   最佳答案   关于Ubuntu下的LAMP配置步骤: 首先要安装LAMP 就是Apache,PH ...

  3. Go 指针

    变量是存储值得地方. 借助声明变量时使用的名字来区分. 指针的值是一个变量的地址.一个指针指示值所保存的位置.不是所有的值都有地址,但是所有的变量都有.使用指针,可以在无需知道变量名字的情况下,间接读 ...

  4. android sdk更新后出现please update ADT to the latest version的解决方法

    参考:https://www.cnblogs.com/wicub/p/3613353.html 把 1.修改android-sdk-windows/tools/lib下的plugin.pro文件,用记 ...

  5. python之全局变量与局部变量

    全局变量: -   在书写中顶格开始: -   一旦定义完毕在整个文件生效: -   在函数内如果定义了同名全局变量名,会“覆盖”掉全局变量: -   在函数中同名的变量,当在函数退出后消失,全局的同 ...

  6. java实现将指定文件夹里所有文件路径输出到指定文件作为参数化文件给lr脚本使用

    java实现将指定文件夹里所有文件路径输出到指定文件作为参数化文件给lr脚本使用 import java.io.BufferedReader; import java.io.BufferedWrite ...

  7. IO输入输出流

    在Java中进行文件的读写,Java IO流是必备的知识. IO流指 的是输入输出流,用来处理设备上的数据.这里的设备指硬盘,内存,键盘录入,网络传输等. 按处理数据类型来分:字节流和字符流. 按流的 ...

  8. git 安装及常见问题处理

    卸载掉自带的: yum remove git 安装: yum -y install curl-devel expat-devel gettext-devel openssl-devel zlib-de ...

  9. 2018-2019-2 20165315《网络对抗技术》Exp2 后门原理与实践

    2018-2019-2 20165315<网络对抗技术>Exp2 后门原理与实践 一.实验任务 使用netcat获取主机操作Shell,cron启动 使用socat获取主机操作Shell, ...

  10. Entity Framework 6源码学习--设置调试EF环境

    下载源代码 打开https://github.com/aspnet/EntityFramework6下载源代码. 建立调试解决方案 建立一个EntityFramework.Sample.sln在Ent ...