老司机百度云盘资源资源分享群

laravel 5 中Eloquent的属性类型转换真是太棒了!AJAX请求&验证
在这个例子中,我们使用传统的表单来发送数据到应用。然而,很多应用使用AJAX请求。在AJAX请求中使用validate方法时,Laravel不会生成重定向响应。取而代之的,Laravel生成一个包含验证错误信息的JSON响应。该JSON响应会带上一个HTTP状态码422。
laravel文档上就是简单这么一说,我一个小白基础差查了一整天资料也没搞清楚。
到处发帖问啊,也没人能回答上来。
这个返回422状态码在success是没有任何反应的,
然后根据这个查到ajax里还有个错误返回数据的具体请看手册ajax error
我请求laravel返回的数据
{"name":["\u59d3\"],"ali":["\u652f\"]}
--------------------------------------------------------
url: "这里填写请求地址",
type:"post",
//请求类型
data:data.field,
//请求的数据
dataType:"json",
//数据类型
success: function(data){
//laravel返回的数据是不经过这里的
error: function(msg) {
var json=JSON.parse(msg.responseText);
alert(json.name);
//到这里终于拿到返回name字段的错误信息了
基础不好就是硬伤,最后感慨下
您可以选择一种方式赞助本站
支付宝扫一扫赞助
微信钱包扫描赞助
1,718 views
1,812 views
1,576 views
1,664 views
关于本站分享交流WordPress经验与技巧,关注网站前端设计与网站制作,打造自己专属的WordPress主题,让你的博客与众不同!本文是一篇Laravel框架的入门教材,为大家讲解了Laravel框架中请求与输入的概念以及示例,感兴趣的朋友可以参考下
Laravel使用一种简单的方式来访问用户提交的信息。 你可以用统一的方式来访问用户提交的信息,而不用为用户提交信息的方式操心。
获取一个用户提交的值
$name = Input::get('name');
为用户提交信息指定一个的默认返回值(如果用户未提交)
$name = Input::get('name', 'Sally');
判断指定的提交信息是否存在
if (Input::has('name'))
获取所有用户提交的信息
$input = Input::all();
获取指定的信息,或者获取排除指定几个提交项之外的所有提交信息
$input = Input::only('username', 'password');
$input = Input::except('credit_card');
如果提交的表单含有 &数组& 形式的输入,可以使用点符号访问数组:
$input = Input::get('products.0.name');
注意: 有一些javascript库,比如 Backbone 会以json格式提交信息。 通过 Input::get 来获取信息,使用上无差别。
Laravel会加密所有已创建的cookie信息,并附加上授权码,当客户端擅自修改cookie信息时,该cookie将被废弃,从而保证安全性。
获取一个指定的cookie值
$value = Cookie::get('name');
添加一个新的cookie键值对
$response = Response::make('Hello World');
$response-&withCookie(Cookie::make('name', 'value', $minutes));
加入下一个Response的Cookie队列之中
如果想在Response创建之前设置cookie,可以使用 Cookie::queue() 方法。cookie将通过应用框架自动添加到最终的Response之中。
Cookie::queue($name, $value, $minutes);
创建一个永不过期的cookie键值
$cookie = Cookie::forever('name', 'value');
用户提交信息持久化
有时可能需要在用户的多个请求之间持久化用户提交的信息。 比如,当用户提交的信息验证失败重新返回提交信息页面时还原用户的输入。
将用户提交的信息存入Session
Input::flash();
把指定的用户提交的信息存入Session
Input::flashOnly('username', 'email');
Input::flashExcept('password');
如果你需要关联持久用户提交的信息的操作和重定向操作,可以使用如下的链式调用的方法:
return Redirect::to('form')-&withInput();
return Redirect::to('form')-&withInput(Input::except('password'));
注意: 如果你想持久化其它的信息,请参考 Session 类.
获取已持久化的用户提交的信息
Input::old('username');
获取用户上传的文件
$file = Input::file('photo');
判断指定文件是否已经被上传
if (Input::hasFile('photo'))
file 方法返回了一个 SymfonyComponentHttpFoundationFileUploadedFile 类的实例, 该类继承自PHP的 SplFileInfo 类,并提供了大量操作该用户上传的文件的方法。
移动一个已上传的文件
Input::file('photo')-&move($destinationPath);
Input::file('photo')-&move($destinationPath, $fileName);
获取一个已上传的文件在服务器的真实路径
$path = Input::file('photo')-&getRealPath();
获取一个已上传的文件的大小
$size = Input::file('photo')-&getSize();
获取一个已上传的文件的 MIME 类型
$mime = Input::file('photo')-&getMimeType();
用户请求的详细信息
Request 类提供了许多 方法 用于获取关于请求的详细信息,该类继承自 SymfonyComponentHttpFoundationRequest 类。 下面提供了几个具有代表性的方法:
获取请求URI
$uri = Request::path();
判断请求路径是否符合指定模式
if (Request::is('admin/*'))
获取请求URL
$url = Request::url();
获取请求URI信息
$segment = Request::segment(1);
获取请求头里的Content-Type信息
$value = Request::header('Content-Type');
获取 $_SERVER 数组里指定的值
$value = Request::server('PATH_INFO');
判断是否是使用ajax请求
if (Request::ajax())
判断请求是否使用https连接
if (Request::secure())
检测请求的响应格式
Request::format 方法基于 HTTP 请求头的 Accept 信息返回客户端希望获取的响应格式:
if (Request::format() == 'json')
Copyright &
All Rights Reserved &&&&&&Laravel - json_decode on response::json returns NULL - Stack Overflow
Join the Stack Overflow Community
Stack Overflow is a community of 6.7 million programmers, just like you, helping each other.
J it only takes a minute:
However if I do return $ all the data is perfectly displayed.
It seems like json_decode only works when I call the API via curl but that was when the API was in a separate app on another vhost. I'm re-integrating it into our main app but I'm unable to extract the data.
echo $response['error']
echo $response-&error
return $response-&error
none of the above works.
performing a foreach on $response, all I get is header info.
foreach ($response as $a)
Cache-Control: no-cache Content-Type: application/json Date: Fri, 14 Feb :02 GMT
my controller
$response = ApiHelper::getCcm($pid);
//convert raw json into array
$ja = json_decode($response,true);
var_dump($ja);
the apihelper
return Response::json(array(
'error' =& false,
=& $data-&toArray()
Know someone who can answer? Share a link to this
via , , , or .
Your Answer
Sign up or
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Post as a guest
By posting your answer, you agree to the
Browse other questions tagged
rev .25153
Stack Overflow works best with JavaScript enabled

我要回帖

更多关于 资源共享吧 的文章

 

随机推荐