以下错误不熟悉所导致的大概两个个错误,如果我漏了请告诉我,还有返回错误就不说了

 // 前端
  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.传过来的值太多了(传一个类有时候超出了)只留一个参数试试

上述为个人理解,希望能帮到你

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐