اذهب إلى المحتوى
  • 0

كيف أخزن ال token القادم من api في const باستخدام react native

أحمد عبد الله2

السؤال

قمت بعملية post ناجحة وظهرت لى هذه ال res .. اريد ان اقوم بتخزين التوكن القادم من ال response 

 

const [Data, setData] = useState([]);

  const loginStudent = () => {
    axios
      .post('https://carna-test-app234/api/v2/login', {
        type: 3,
        method_type: 'email',
        email: 'student@app321.com',
        password: '123456',
      })
      .then(res => {
        console.log(res.data);
        setData(res.data);
      })
      .catch(err => console.log(err));
  };

 

وهذه ال response تظهر لى .. 
كيف أخزن هذه ال response فى متغيريات ؟؟ انا اريد تخزين التوكن فما الحل ؟

{
    "user": {
        "id": 625,
        "name": "ahmed",
        "email": "teacher@app312.com",
        "phone": "87654321",
        "type": 2,
        "lang": "ar",
        "fcm_status": 1,
        "social": 0,
        "verified_at": null,
        "working_times": [],
    },
    "token_type": "Bearer",
    "expires_at": "2022-05-21 20:15:27",
    "status": 200,
    "access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjUxMDZhNzNhZjRmZDg0NTliMjc4MTc2ZDZlNjE3NDU2MDg2NzViOWVlZjYyMDIyYTlhM2M1NWE5MzU1MzY1ZDEzZGFiODU3NDEyZGY4YzhhIn0.eyJhdWQiOiIzIiwianRpIjoiNTEwNmE3M2FmNGZkODQ1OWIyNzgxNzZkNmU2MTc0NTYwODY3NWI5ZWVmNjIwMjJhOWEzYzU1YTkzNTUzNjVkMTNkYWI4NTc0MTJkZjhjOGEiLCJpYXQiOjE2MjE2MjA5MjcsIm5iZiI6MTYyMTYyMDkyNywiZXhwIjoxNjUzMTU2OTI3LCJzdWIiOiI2MjUiLCJzY29wZXMiOltdfQ.tvDMG3sNjL7g9FhXM7CfFQ7obXT_SU6NOSvqx09WOOWnd8ciPkRa1QtTcNVhU5uDpmEIqihzB88ojLbFi1PSqpFiIDv1yYsasTOrmnshpWJ7vZlRWOYcUPXWcy3sKEw2BNxqPpD270nrTgsf6vn_BtcQlGKL-eejuPoyXXj9cbU5uZZRfxE151QtiVr4Hfsde-33UqT5fmJVvJr-IkJxfUmmUrT2h98FHjJn7rHxqGwIYmH9TcMF99P-WwPw-8t6d_dFQBajiZOtLtmBvC_OHvSItDV1nmWoAVqRfNOAVZ25tHhu8F9ZmSXUTZPKCrZoqC7RKSXrrOWNEiF1r9Oi6x5-5SEoJm5FGHh1pXgDgUmPkIkR1B6jPEUMQMZ7suX5cFSRKP6M8wIAHxrZgaArPGF2gxrF9Rl-tFWjw4AK-byJzphNxr6utcsNqMEnYwCIupHykOiXwZwxBYJt9oFNHcAs6LArgsg0sas1zuTsCowBrNxtqehBgKvaNLQknmID6MmUxuGa7IADp-cytzZdCem9D4ztZUvTCBPku0mpGEC1WabYAtLq6OaTuf18mBfVlmw9yWgbdyPm3DH6DmbGy3FDa9Eqv7cAT2bNnVlLC_kyhCFd2-wG0waWbvY-4qKkIxwj5zXLmNOmg6alWO7dvL63jYEZOxHfYsXNThdtepw"
}

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

Recommended Posts

  • 0
بتاريخ 4 دقائق مضت قال أحمد ابراهيم عبد الله:

لكنى احاول ان افعلها ب react native .. 

import { AsyncStorage } from 'react-native';


const [Data, setData] = useState([]);

  const loginStudent = () => {
    axios
      .post('https://carna-test-app234/api/v2/login', {
        type: 3,
        method_type: 'email',
        email: 'student@app321.com',
        password: '123456',
      })
      .then(async res => {
        console.log(res.data);
        const token = res.data.access_token//هذا لتخزين في متغير
         await AsyncStorage.setItem(
      'token',
      token
    );
        setData(res.data);
      })
      .catch(err => console.log(err));
  };

يمكنك استخدام AsyncStorage من react-native

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

نقوم بتخزين تلك البيانات في local storage او indexed db فى البراوزر 

window.localStorage.setItem('user', JSON.stringify(res.data.user));

في هذا السطر قمنا بتخزين بيانات المستخدم في local storage 

ولكي نسترجع القيم المخزنة 

window.localStorage.getItem('user');

 

تم التعديل في بواسطة يوسف احمد9
رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 1 دقيقة مضت قال يوسف احمد9:

نقوم بتخزين تلك البيانات في local storage او indexed db فى البراوزر 


window.localStorage.setItem('user', JSON.stringify(reponse));

 

لكنى احاول ان افعلها ب react native .. 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

يمكنك بسهولة تخزين ال token في متغير عن طريق تعريفه

const [Data, setData] = useState([]);

  const loginStudent = () => {
    axios
      .post('https://carna-test-app234/api/v2/login', {
        type: 3,
        method_type: 'email',
        email: 'student@app321.com',
        password: '123456',
      })
      .then(res => {
        console.log(res.data);
        const token = res.data.access_token//هذا لتخزين في متغير
        localStorage.setItem('token', token);// هذا للتخزين المحلي في المتصفح
        setData(res.data);
      })
      .catch(err => console.log(err));
  };

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

 يمكنك تخزين التوكن في التخزين المحلي بإستعمال التابع setItem ضمن localStorage لإستعماله في عمليات المصادقة , على هذا النحو : 

window.localStorage.setItem(key, value);

كما يمكنك قراءته متى احتجت على هذا النحو :

window.localStorage.getItem(key);

مثال عن ذلك : 

const [Data, setData] = useState([]);

  const loginStudent = () => {
    axios
      .post('https://carna-test-app234/api/v2/login', {
        type: 3,
        method_type: 'email',
        email: 'student@app321.com',
        password: '123456',
      })
      .then(res => {
        console.log(res.data);
        setData(res.data);
        
        // تخزين التوكن
        if(!! res.data.access_token)
        {
          window.localStorage.setItem('token', res.data.access_token);
        }
      
      })
      .catch(err => console.log(err));
  };

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0
بتاريخ 9 دقائق مضت قال أحمد ابراهيم عبد الله:

لكنى احاول ان افعلها ب react native .. 

يوجد أخي مكتبة لل React native تقوم بعمل نفس فكرة ال local storage بإسم AsycnStorage

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...