从网站上消费API

时间:2016-05-01 11:57:06

标签: php laravel-5 laravel-5.1

我正在开发一个网站和REST API,它们是同一项目文件夹的一部分。

我已经开发了一个REST api,如下所示

URL: example.com/login
Type: POST
Request Body:
{
    "credentials": {
        "username":"dd",
        "password":"dd"
    },
    "appInfo": {
        "version": "1.0"
    }
}

在登录方法(UserController)中,我正在获取请求正文,如下所示

json_decode(Request::instance()->getContent());

现在我正在开发一个网页,并希望从那里调用此API。我正在使用以下代码(HomeController)

public function acceptlogin(Request $request) {
    $data = array(
        'credentials'=> array(
            'username'=>$request->email,
            'password'=>$request->password
        ),
        'appInfo'=> array(
            'version'=> "1.0"
        )
    );
    $request1 = Request::create('example.com/login', 'POST', $data);
    $response = Route::dispatch($request1);
}

我可以从上面的代码中调用登录api,但是login方法中的以下代码返回空。

json_decode(Request::instance()->getContent());

您能否建议如何在Laravel中调用本地API(在同一个项目中)

1 个答案:

答案 0 :(得分:0)

通过解决方法解决了该问题。我使用以下代码调用LoginController

(new UserController)->loginNew($data)