Я новичок в Laravel, так что извините за мой код ..Ajax в Laravel 5.3 доступны каждому
Я пытаюсь интегрировать библиотеку Jquery с моим проектом Laravel.
Контроллер
public function index()
{
return view('products');
}
public function data()
{
$products = Product::all();
return $products->toJson();
}
Маршрут
Route::get('/products', ['as' => 'products', 'uses' => '[email protected]']);
Route::get('/products/data', ['as' => 'products.data', 'uses' => '[email protected]']);
Посмотреть
<script>
var CSRF_TOKEN = $('meta[name="csrf-token"]').attr('content');
$.ajax({
url: '/products/data/',
type: 'GET',
data: {_token: CSRF_TOKEN},
dataType: 'JSON',
success: function (data) {
console.log(data);
}
});
</script>
Все работает, но если я иду/products/data/Я вижу json в браузере. Этого не должно быть!
Я делаю это правильно? Это правильный способ получить данные json из базы данных в представление?
спасибо.
Ok спасибо за объяснение. Но разве мне не удастся заблокировать доступ к этому URL-адресу через браузер? – devwebapp
@devwebapp Я не думаю, что это возможно. Например, вы можете получить доступ к URL-адресу «GET», зарегистрировав пользователей для показа продуктов. Но это необязательно. Вы также можете обратиться за запросом «POST», чтобы данные не были доступны на URL-адресе, но вы не отправляете какие-либо данные, поэтому я не думаю, что это требуется в этом сценарии. –