Запрос API Laravel, предшествующий "<? Php" - PullRequest
0 голосов
/ 07 сентября 2018

Моя проблема

Проще говоря, у меня есть две системы, которые работают вместе, одна из которых представляет собой простой html и использует Axios для отправки запросов в мое приложение laravel, а другая - приложение laravel, которое по сути является просто API для первого приложения. Когда я делаю запрос к API laravel, я продолжаю получать данные обратно, к которым добавляется открывающий тег <?php ", который вызывает всевозможные случайные проблемы!

Javascript

axios.post('http://my.app.test/api/authenticate').then((response) => {
    let data = response.data;
        console.log(data);
    });

Laravel - api.php

Route::middleware('api')->group(function(){
    Route::post('/authenticate', function(Request $request){
        return [
            'something',
            'something else'
        ];
    });
});

Результат

<?php["something","something else"]

Любое понимание того, почему это происходит, будет полезно. Если вам нужна дополнительная информация, пожалуйста, спрашивайте и предоставляйте! Заранее спасибо.

Ответы [ 2 ]

0 голосов
/ 07 сентября 2018

RouteServiceProvider.php содержит:

public function map(Router $router)
{
    $router->group(['namespace' => $this->namespace], function ($router)
    {
        foreach (File::allFiles(app_path('Http/Routes')) as $partial)
        {
            require_once($partial->getPathname());
        }
    });
}

Вероятно, в одном из файлов маршрутов, загруженных этим методом, нет ничего, кроме тега <?php с без новой строки . Вероятно, проблема заключается в отсутствии новой строки.

0 голосов
/ 07 сентября 2018

Код выше выглядит нормально, но опять же я не думаю, что проблема заключается в этом.

Похоже, у вас есть <?php в laravel (маловероятно) или где-то в вашем статическом html-файле. Проверьте ваш laravel index.php или файлы конфигурации на наличие дополнительных «<?php». И найдите в вашем html и javascript файле "<?php"

...