简体   繁体   English

如何通过 id 获取用户并通过 get 请求使用 React Native 来表达?

how to get a user by id with a get request to express using react native?

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文简体   中文繁体   英文版本 版本,有任何建议请联系yoyou2525@163.com。

I am trying to render One users info for the profile page in react native using express and axios.我正在尝试使用 express 和 axios 在本机反应中呈现个人资料页面的一个用户信息。

This is the controller responsible for getting a user.这是负责获取用户的 controller。

```// GET ONE USER BY ID
module.exports.findOneSingleUser = (req, res) => {
User.findOne({ _id: req.params.id })
    .then(oneSingleUser => res.json({ user: oneSingleUser }))
    .catch(err => res.json({ message: 'Something went wrong', error: err }));
}```

this is the code im using to make the axios request to the server and I am able to get all the users in the DB but I want to be able to render one user by id or the token that is stored for login and for login to persist which is working.这是我用来向服务器发出 axios 请求的代码,我能够获取数据库中的所有用户,但我希望能够通过 id 或存储用于登录和登录的令牌呈现一个用户坚持这是有效的。

```
const ProfileInfo = (props) => {
const { navigation, route } = props
const authCtx = useContext(AuthContext);
const token= authCtx.token

const [userInfo, setUserInfo] = useState([]);


useEffect(() => {
    axios.get(`http://localhost:3000/api/users/`)
        .then(res => console.log(res.data))
        .catch(err => console.log(err))
}, [])```

this is the code in util folder that gets the token from the backend这是从后端获取令牌的 util 文件夹中的代码

import { useNavigation } from '@react-navigation/native';
const BASE_URL = 'http://localhost:3000'


    // ! LOGIN FUNCTION
    export async function authenticate(email,password ){
    const token = await axios.post(BASE_URL + '/api/login',
    {
        email: email,
        password: password,
    },{ withCredentials: true }
    );
    return token;
    }
    // ! REGISTER NEW USER FUNCTION
    export async function createUser(email, password) {
    const token = await axios.post(BASE_URL + '/api/register',
        {
            email: email,
            password: password,
        },{ withCredentials: true }
    );
    return token;

    }```


this is the screen where I have the profile info componet being used

    ```import React,{useEffect} from 'react'
    import ProfileInfo from '../components/Profile/ProfileInfo';
    import Statistics from '../components/Profile/Statistics';


    const ProfileScreen = (props) => {
    const {navigation} = props
    
    
    return (
        <>
            <ProfileInfo navigation={navigation}/>
            <Statistics />
        </>
    )
    }

    export default ProfileScreen```

    

How do or What do I need to pass into the url of the axios request to get the data for the user that is logged in?  thanks in advance.

when I change the server side to
    User.findOne({ token: req.params.token})

      &

    ``` useEffect(() => {
        axios.get(`http://localhost:3000/api/users/${token}`)
            .then(res => console.log(res.data))
            .catch(err => console.log(err))
    }, [])```


I get a user but it is only the first user in DB not the user that is logged in... not sure how to get the one user that is logged in.

问题暂未有回复.您可以查看右边的相关问题.
1 如何将 React 发送到 Express 服务器获取请求传递 ID - How to send React to Express server get Request passing id

你好,我正在学习 MERN Stack dev,所以我正在尝试实现一个 get 请求,通过我发送和 ID,然后尝试通过 id 搜索集合,将条目返回给客户端,所以我一直在尝试实现这个,但我不知道我哪里出错了,因为我收到了 404 响应 下面的代码是我尝试通过 get 请求发送的客户端 我能否获得有 ...

2 如何为 React Native 应用程序的每个用户获取唯一 ID - How to get a unique ID for each user of React Native app

我正在构建我的第一个 React Native 应用程序,我想添加用户身份验证。 我需要获取一个唯一的用户 ID 以添加到我的数据库中的元素中,因此只有该特定用户的元素会显示在应用程序中。 我考虑过自己构建一些东西,但我读了一篇文章,认为这可能会引入安全漏洞,并且由于我的应用程序正在处理敏感数据,我 ...

3 如何在本机反应中从firebase获取用户ID? - How to get user id from firebase in react native?

我需要你的帮助,我正在为我的应用程序使用 firebase。 我正在尝试获取用户 ID,而不是登录用户,而不是我拥有的所有用户。 我想像在每个用户的警报中一样显示他们的(uid)。 此外,我将它们显示在一个平面列表中,当我在警报中设置item.uid ,它会显示(undefined) 。 但是,用户 ...

6 React native expo 和 express 服务器的 GET 请求权限错误 - GET request permissions error with React native expo and express server

我正在我的 React Native EXPO 应用程序中使用 axios 调用 GET 请求,但在我的终端中收到了一个网络错误。 我可以从我的网络浏览器向我的 Express 服务器发出请求,但不能从我的 RN 应用程序中发出请求。 我将它添加到我的 app.json 文件中,就像我添加到我的 ...

7 对React Native应用程序中的动态SELECT查询的mySql / Express GET请求 - mySql/Express GET request to a dynamic SELECT query in a React Native application

我正在尝试发出GET请求,该请求将触发来自mySQL数据库的SELECT查询。 但是,我需要动态的请求,因为要查询的数据取决于用户输入。 以下是根据我执行POST请求的方式得出的结果: * handlePress函数在选择其各自的组件时被触发 ...

8 Express Server 无法从 React Native 应用程序获取请求 - Express Server cannot GET request from the React Native app

目标:创建一个可以相互通信的前端和后端。 我从前端开始,使用https://reactnative.dev/movies.json作为占位符来提供前端数据。 一旦成功完成,我就开始开发服务器,即使它在 Postman 中工作,它在前端也不能工作。 Issue: When I replace htt ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM