저는 IOS용 바코드 스캐너 앱을 개발하려고 합니다. 이제는 바코드에서 데이터를 읽을 수 있는 스캐너를 만들었습니다. 하지만 데이터를 읽는 것뿐만 아니라 데이터를 데이터베이스에 저장하고 싶습니다. 반대편의 소스 코드 중 일부를 탐색하는 것은 내 코드입니다.
scanner.js
이미 바코드에서 데이터를 읽을 수 있는 스캐너의 소스는 다음과 같습니다
으아악백엔드로 데이터를 보내는 방법을 찾아보니 이런 코드가 필요한데, 이 코드를 scanner.js에 어떻게 구현하나요? 모두가 도움을 받을 수 있기를 바랍니다. 감사합니다
import React, { useState, useEffect,Component,onMount} from 'react'; import { Text,TextInput, View, StyleSheet, Button } from 'react-native'; import { BarCodeScanner } from 'expo-barcode-scanner'; import {useNavigation} from'@react-navigation/native'; import {StatusBar} from 'expo-status-bar'; export default function Scanner () { const [hasPermission, setHasPermission] = useState(null); const [scanned, setScanned] = useState(false); const [userid, setText] = useState('Not yet scanned') const [currentDate, setCurrentDate] = useState(''); const navigation = useNavigation(); const askForCameraPermission = () => { (async () => { const { status } = await BarCodeScanner.requestPermissionsAsync(); setHasPermission(status === 'granted'); })() } // Request Camera Permission useEffect(() => { askForCameraPermission(); }, []); useEffect(() => { var date = new Date().getDate(); //Current Date var month = new Date().getMonth() + 1; //Current Month var year = new Date().getFullYear(); //Current Year var hours = new Date().getHours(); //Current Hours var min = new Date().getMinutes(); //Current Minutes var sec = new Date().getSeconds(); //Current Seconds setCurrentDate( date + '/' + month + '/' + year + ' ' + hours + ':' + min + ':' + sec ); }, []); // What happens when we scan the bar code const handleBarCodeScanned = ({ type, data }) => { setScanned(true); setText(data ) }; // Check permissions and return the screens if (hasPermission === null) { return ( <View style={styles.container}> <Text>Requesting for camera permission</Text> </View>) } if (hasPermission === false) { return ( <View style={styles.container}> <Text style={{ margin: 10 }}>No access to camera</Text> <Button title={'Allow Camera'} onPress={() => askForCameraPermission()} /> </View>) } // Return the View return ( <View style={styles.container}> <View style={styles.barcodebox}> <BarCodeScanner onBarCodeScanned={scanned ? undefined : handleBarCodeScanned} style={{ height: 400, width: 400 }} /> </View> <Text style={styles.maintext}>{userid + '\n'+currentDate} </Text> { scanned && <Button title={'Scan again?'} onPress={() => setScanned(false)} color='tomato' /> } { scanned && <Button title={'OK'} onPress={()=> navigation.navigate('Home',{userid})} /> } </View> ); } const styles = StyleSheet.create({ container: { flex: 1, backgroundColor: '#fff', alignItems: 'center', justifyContent: 'center', }, maintext: { fontSize: 16, margin: 20, }, barcodebox: { alignItems: 'center', justifyContent: 'center', height: 300, width: 300, overflow: 'hidden', borderRadius: 30, backgroundColor: 'tomato' } });
scanner.js에서 구현해 봤는데 괜찮더라구요
으아아아.php 삽입
으아아아바코드를 스캔하고 "확인" 버튼을 클릭하면 오류가 표시됩니다 유형 오류: 네트워크 요청 실패