6把刀
特别喜欢这些有点技术含量的问题,提问的深度太低了,都不想回答。
主要是这10个金钱,你太值了,因为你的答案,市面上是没有的,是我帮你写的
没有人回答,我就帮你写下吧 你可以在 http://tool.oschina.net/regex/ 这里测试你的效果
(?=.*?\d{1})(?=.*?[A-Z]{1})(?=.*?[a-z]{7,})\b
- 6把刀 回答了问题 怎么让错误信息返回的是json格式的数组
对于前端处理错误的,其实还是比较高深,路子思路也是比较多的,我用到最多的两种是这样,因为我觉的你继续深入,必定会碰到。
前端处理错误,
一种是直接yii2这种表单的方式,直接显示在对应的字段旁边。
一种是弹出层提示。第一种:拿到所有错误 getFirstErrors() 之后在拿到json后对dom操作。
第二种:一种是直接拿到第一个错误属性的单个或多个错误,一种是直接拿到所有错误,数组转字符化操作,比如import(',', $model->firstErrors()) - 6把刀 回答了问题 backend 登录后,路径怎么不对?
肯定是发疯了,我估计他想喝酒,你买瓶酒,对着他的主机咕噜咕噜的给他喝几个,估计就好了
一切皆文件,就好比从A点到B点。可以产生出100种方法,怎么走,完全看喜好。
理解原理,理解A点到B点他不管所经过多少节点,他终归为一进一出。 一切皆虚浮。啊米拖佛。@hp66722667 在我眼里一切都不是问题,一切皆为思想,想怎么干就怎么干。
一切皆文件,就好比从A点到B点。可以产生出100种方法,怎么走,完全看喜好。
理解原理,理解A点到B点他不管所经过多少节点,他终归为一进一出。 一切皆虚浮。啊米拖佛。'' => 'options'不生效是因为设置了'controller' => 'v1/user',这样,如果使用OPTIONS访问 v1/users/abc的时候。会报404,看来这是只针对当前users的url,并不支持users下边的比如users/abc这种路径的访问。
最终改为'' => 'options'
就你理解的我一一给你理下。看看你能理解多少
1.
'' => 'options'不生效是因为设置了'controller' => 'v1/user'这是错误的理解
'' => 'options' 的意思是当前设置的controller空路由时他的options访问可以到哪个位置,相当于
options www.xxx.com/users 他options走的是actions里面的options独立方法2.
如果使用OPTIONS访问 v1/users/abc的时候。会报404,
这是因为options 访问 www.xxx.com/user/abc 你是没有配置过任何options的,你可以在你的chrome的请求头部看到信息
你只要给他配置起来就行比如:我这里加点料,我怕你理解错,我加点。这个/user/abc他需要post请求那写法如下
'POST abc' => 'abc',
'OPTIONS abc' => 'options3.最终改为'《action》' => 'options'
说有问题是因为你统一了路由,这种写法,在与我们写路由来说,是不规范的,路由就是有什么写什么,最小化标准,会让你更快的定位问题。比如 www.xxx.com/users/12 这样你的options就又走不通了。是不是得'/' => 'options'了呢,不能说你写错,只能说你思想不对。就得'OPTIONS users/' => 'options'一定要去看YII2他的路由创建原理是怎么实现的,看源代码
而你以上的理解错误是因为
你写在patterns里,他的意思是替换原有路由
patterns 或 extraPatterns 重新定义现有的模式或添加此规则支持的新模式@xczizz 恩,所以开始我就说了,看起来能解决你的问题,其实是不对的。而这种不对,取决于你对这路由的理解偏差掉了
http://www.ruanyifeng.com/blog/2014/05/oauth_2_0.html
先理解上文。我再简说。能听懂几分看造化了。
用户访问www.xxx.com 系统先去判定是否有已经登陆过。可以是session等。
如果没有登陆就发起微信网页授权。授权成功后,微信会访问你指定的一个连接比如www.xxx.com/login?access=kdkdkdkdkdk
而这login就是处理登陆的东西。而拿到这个access后,所要做的东西,比如拿到openid等,那就看
https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140842微信网页授权后,你拿到的就是access_token,拿到这个凭证说明你是登陆成功的,有钥匙了,那你在每一个请求后面加一个参数access_token给服务器,服务器验证这个access_token是否是正确的来识别用户是否是登陆正确的
原理一个是通过账号密码,一个是通过账号密码拿到的access_token来登陆。很简单'' => 'options'不生效是因为设置了'controller' => 'v1/user',这样,如果使用OPTIONS访问 v1/users/abc的时候。会报404,看来这是只针对当前users的url,并不支持users下边的比如users/abc这种路径的访问。
最终改为'' => 'options'
就你理解的我一一给你理下。看看你能理解多少
1.
'' => 'options'不生效是因为设置了'controller' => 'v1/user'这是错误的理解
'' => 'options' 的意思是当前设置的controller空路由时他的options访问可以到哪个位置,相当于
options www.xxx.com/users 他options走的是actions里面的options独立方法2.
如果使用OPTIONS访问 v1/users/abc的时候。会报404,
这是因为options 访问 www.xxx.com/user/abc 你是没有配置过任何options的,你可以在你的chrome的请求头部看到信息
你只要给他配置起来就行比如:我这里加点料,我怕你理解错,我加点。这个/user/abc他需要post请求那写法如下
'POST abc' => 'abc',
'OPTIONS abc' => 'options3.最终改为'《action》' => 'options'
说有问题是因为你统一了路由,这种写法,在与我们写路由来说,是不规范的,路由就是有什么写什么,最小化标准,会让你更快的定位问题。比如 www.xxx.com/users/12 这样你的options就又走不通了。是不是得'/' => 'options'了呢,不能说你写错,只能说你思想不对。就得'OPTIONS users/' => 'options'一定要去看YII2他的路由创建原理是怎么实现的,看源代码
而你以上的理解错误是因为
你写在patterns里,他的意思是替换原有路由
patterns 或 extraPatterns 重新定义现有的模式或添加此规则支持的新模式是不是得'/' => 'options'了呢 给系统过滤了,这里原意思是:是不是得
'<action>/<id>' => 'options'