php – 在laravel 5.1中的失败请求验证后重定向到登录页面

前端之家收集整理的这篇文章主要介绍了php – 在laravel 5.1中的失败请求验证后重定向到登录页面前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_301_2@
我正在为移动应用程序创建Rest Full Api,我正在验证请求它将我重定向到有错误登录页面.

这是我的ApiController(我为所有api创建):

use App\User as UserModel;
use App\Fb_friend as FbFriendsModel;
use App\Http\Requests\UserRequest;

class ApiController extends Controller
{

    /**
     * Create a new movie model instance.
     *
     * @return void
     */
    public function __construct(UserModel $user,FbFriendsModel $fb_friends){
        $this->user = $user;
        $this->fb_friends = $fb_friends;
    }
    public function createUser (UserRequest $request) {
      // some code here
    }

路线:

Route::post('createUser',['as' => 'createUser','uses' => 'ApiController@createUser']);

UserRequest.PHP

public function rules()
    {
        return [
            'fb_id' => 'required|unique:users','username' => 'required|unique:users','email' => 'required|unique:users','image' => 'required','device_id' => 'required','status' => 'required',];
    }

我已覆盖函数Request.PHP以进行错误格式化:

abstract class Request extends FormRequest
{
    protected function formatErrors(Validator $validator)
    {
        return [$validator->messages()->toJson()];
    }
}

当我尝试通过邮递员调用服务时,它返回json格式的错误,但它也打印登录页面,我不明白为什么?

解决方法

如果您使用Postman测试API,则无需覆盖Request类中的response(),可以按照以下步骤操作:

>在自定义请求中将authorize()中的返回类型设为true,

public function authorize()
{
   //make it true
   return true;
}

>转到邮递员的标题部分并定义接受类型,

Accept:application/json

>现在点击你的API的终点和bam ..工作正常.

@H_301_2@

猜你在找的Laravel相关文章