我正在尝试使用axios获取记录。 但问题是我在控制台中收到错误,如下所示: GET http://127.0.0.1:8000/getData 500(内部服务器错误)
这是我正在尝试获取数据的组件
<template lang="html">
<div class="getData">
<h1 class="text-center text-muted">Recently Added Chemicals</h1>
<div class="table-responsive">
<table class="table table-striped">
<tr>
<th>Chemical Name</th>
<th>Status</th>
<th>Stock</th>
</tr>
<tr v-for="list in lists">
<td>{{list.chem_name}}</td>
<td>
<p v-if="lists.is_active = 1" style="color: green;">Active</p>
<p v-else style="color: red;">Not Active</p>
</td>
<td>
<p v-if="lists.is_stocked = 1" style="color: green;">In Stock</p>
<p v-else style="color: red;">Out Of Stock</p>
</td>
</tr>
</table>
</div>
</div>
</template>
<script>
export default {
data () {
return {
lists: {},
errors: {}
}
},
mounted(){
axios.get('getData').then((response) => this.lists = response.data).catch((error) => console.log(this.error));
}
}
</script>
然后我的资源控制器中的getData函数
public function getData(){
$id = Auth::user()->id;
$data = chemType::where('user_id', $id)->orderBy('id', 'DESC')->get();
return response()->json(200, $data);
}
请帮忙!!!
答案 0 :(得分:1)
500错误意味着后端出现错误,请查看chrome dev工具网络以查看抛出的异常。
我认为错误发生在 response() - &gt; json()中。第一个参数应该是$ data
答案 1 :(得分:0)
确认bootstrap.js文件中包含以下行
XOAUTH2
并检查您的html页面标题中是否包含以下内容。
TIdSASL
答案 2 :(得分:0)
我是通过在资源控制器中进行更改来完成的。控制器出了什么问题,我在创建新记录后没有发送json响应。所以我做了一件事就是发送了json的回复。 在vue部分,我使用$ parent函数从我的父组件到子项,在子项中我使用$ emit函数刷新了记录,是的,我现在正在获取新创建的记录而没有任何页面重新加载。
答案 3 :(得分:0)
请检查您的网址是否正常工作。意味着它在Controller或Not中获取数据。它给出了一些回应或不回应。我遇到了同样的问题,但我的网址没有提取任何数据,因为我的模型没有包含在内。包括模型后,我的问题就解决了。