Fetch api не отправляет данные на серверный сервер

#azure #react-native #express #fetch-api #face-api

#azure #react-native #экспресс #fetch-api #face-api

Вопрос:

Я использую когнитивный сервис azure, который я использую Face API, во внешнем интерфейсе пользователь сделает снимок, затем вызовет API, чтобы проверить, обнаружено ли лицо или нет, после этого идентификатор лица будет добавлен с использованием Add Face under FaceList as в документации Azure, после этого я хочу обновить столбец в базе данных, если лицо добавлено успешно,здесь я вызываю вызываемую функцию senddata() , которая будет использовать fetch API для отправки данных на серверный сервер, затем на сервере будет обновлен столбец базы данных, проблема в том, что после успешного добавления face функция senddata () не отправляет никаких данных на серверный сервер: вот код съемки:

  const takePicture = async () => {
        if (camera) {
            const data = await camera.current.takePictureAsync({ quality: 0.25, base64: true });
            const selfie_ab = base64ToArrayBuffer.decode(data.base64);
           
            setTakingPic(true)

            try {
                const facedetect_instance_options = { ...base_instance_options };
                facedetect_instance_options.headers['Content-Type'] = 'application/octet-stream';
                const facedetect_instance = axios.create(facedetect_instance_options);

                const facedetect_res = await facedetect_instance.post(
                    `/detect?returnFaceId=trueamp;detectionModel=detection_02`,
                    selfie_ab
                );

                console.log("face detect res: ", facedetect_res.data);

                if (facedetect_res.data.length) {

                    const add_face_instance_options = { ...base_instance_options };
                    add_face_instance_options.headers['Content-Type'] = 'application/octet-stream';
                    const add_face_instance = axios.create(add_face_instance_options);
                    const addface_res = await add_face_instance.post(
                        `/facelists/${facelist_id}/persistedFaces`, selfie_ab
                    );

                    if (addface_res.data.persistedFaceId.length) {
                        const status = "on hold";
                        const faceid = addface_res.data.persistedFaceId;
                        senddata(status, faceid)
                        console.log("Face add and send for approval: ", addface_res.data.persistedFaceId);
                    } else {
                        Alert.alert("error", "something went wrong");
                    }

                } else {
                    Alert.alert("error", "Detection failure. Please make sure there is sufficient light when taking a selfie");
                }

            } catch (err) {
                console.log("err: ", err);
            }

        }
    };
 

здесь senddata() функция:

  const senddata = (status, faceid) => {
        console.log(status)
        console.log(faceid)
        fetch('http://*********/users/updateRegStatus', {
            method: 'POST',
            headers: {
                'Accept': 'application/json',
                'Content-Type': 'application/json',
            },
            body: JSON.stringify({
                status: status,
                faceid: faceid
            })
        })
            .then((response) => response.json())
            .then((res) => {
             
                if (res.success === true) {
                    alert(res.message);
                    navigation.navigate('dashboard')
                }
                else {

                    alert(res.message);

                }
            })

    }
 

и следующий код формирует серверную часть, которая для обновления базы данных:

 router.post('/updateRegStatus', function (req, res, next) {

  var status = req.body.status;
  var faceid = req.body.faceid;
 

  connection.query("INSERT INTO face_status (status,faceid) VALUES (?,?) ", [status, faceid], function (err, row) {
    if (err) {
      console.log(err);
    } else {
      res.send({ 'success': true, 'message': 'Your face details sent for approval' });
    }
  });
});
 

пожалуйста, помогите мне

Комментарии:

1. Не могли бы вы, пожалуйста, проверить, получил ли ваш резервный сервер ваш запрос?

2. @JimXu нет, сервер не получает запрос