reactjs 使用axios请求时,从服务器(Sping Boot )获取错误请求

ezykj2lf  于 2023-01-17  发布在  React
关注(0)|答案(1)|浏览(133)

我现在一直在向服务器发送请求,但没有得到响应。我在postman上试过,它运行得很好。但是,当我尝试把它放在react上时,后端总是以一个错误的请求响应。
下面是我的后端代码

@GetMapping(value = "/searchPatient")
    public ResponseEntity<?> searchPatients(@RequestParam String id_num,
                                            @RequestParam String name) {
        List<PatientForSearchDto> patientForSearchDtos =      patientService.viewSearchedPatient(id_num, name);
        return ResponseEntity.status(HttpStatus.OK).body(
                new ResponseObject("ok", "Success", patientForSearchDtos)
        );
    }

这是我的代码前端(React)

async function sendRequest () {
        const formData = new FormData();
        formData.append('id_num', id_num);
        formData.append('name', name);
        console.log(formData)
        console.log(formData.get('name'))
        console.log(formData.get('id_num'))
        const config = {
            method: 'get',
            url: 'http://localhost:8080/api/searchPatient',
            // headers : {
            //     'Content-Type': 'from-data'
            // },
            data : formData
        };

        await axios(config)
        .then(function (response) {
            console.log(JSON.stringify(response.data));
            setPatientList(response.data.data.object)
        })
        .catch(function (error) {
            console.log(error);
        });

    }

这是我通过 Postman 发送请求时得到的结果
enter image description here
以下是使用react发送请求时的情况
enter image description here

rhfm7lfc

rhfm7lfc1#

从Axios文档中获取有关请求配置data参数的信息:
//data是要作为请求体发送的数据
//仅适用于请求方法“PUT”、“POST”、“DELETE”和“PATCH”
因此,不支持使用GET方法的data
不能用params代替吗?

相关问题