前端访问后端接口,后端没有接收到值,或者访问后端没反应,调试也没进来
以下错误不熟悉所导致的大概两个个错误,如果我漏了请告诉我,还有返回错误就不说了// 前端this.axios.get('/api/xxx/User',this.tabledata).then(res => {});//后端public async Task<IActionResult>User(user filter){}一:前端访问后端代码没反应1.检查前端名字与后端是否相同2
以下错误不熟悉所导致的大概两个个错误,如果我漏了请告诉我,还有返回错误就不说了
// 前端
this.axios.get('/api/xxx/User',this.tabledata).then(res => {
});
//后端
public async Task<IActionResult>User(user filter)
{
}
一:前端访问后端代码没反应
-
1.检查前端名字与后端是否相同
-
2.查看请求类型:前后 是否是一样的 Get或者Post请求
-
3.计算机拒绝了你的接口访问,打开“输出”看一下接口是否有反应
打开后点击让我们的前端访问后端接口,查看输出里面是否对我们的访问起反应了
如果没有反应,那就有几种情况
-
1.前端压根没有访问到后端 (前端写错了,或者后端没重新生成,没重新调试)
-
2.带参数的时候,参数出现了问题。直接把前后端参数删掉再测试(例子:{params:ID:id}或者this.id没有实例等问题)
-
3.。。。。。。。等等
如果有反应,那也有几种情况
-
1.权限问题(每个系统不一样,访问的时候会设置权限,可能权限访问不了)
-
2.后端问题接口名字重复,分不清具体是那个一 (有人会把Get请求和Post请求写一样的名字) 在上面加上[HttpPost]或者[HttpGet] ,不行就改名字
-
3.。。。。。。。。等等
二:带参访问后端但是没有接收到值
分两种情况:
一.传一个字段比如id,接收也用一个字段接收
- 1.没接收到值,确认名字一样,类型一样
- 2.在字段前面加[FromQuery]或者其他的
public async Task< IActionResult> xxx ([FromQuery] int? id)
{
}
二.传一个类,接收也用一个实体类或者DTO类接收 一般都是这个
- 1.接收类里面有调用方法的,(比如时间格式化啊,密码加密啊等等)换个类或者自己重新写一个类在来用
- 2.最好不要用数据库对应的实体类来用,不安全还会有一些稀奇古怪的错误
- 3.用自己写的其他类的时候(类型不一致,名字不同)
- 4.用自己的写的缩略类(自己的类引用的其他的类出现问题)先不引用试试
- 5.传过来的值太多了(传一个类有时候超出了)只留一个参数试试
上述为个人理解,希望能帮到你
更多推荐
所有评论(0)