微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

React & Socket - 使用 API 获取用户 ID

如何解决React & Socket - 使用 API 获取用户 ID

我用 Socket 制作了一个简单的聊天应用程序。我想从我的 Django 服务器“http://localhost:8000/api/current_user/”中获取带有 API 的当前用户 ID

但是当我尝试以一种我不知道它不起作用的方式获取当前用户时。我该如何处理?我想我需要在客户端获取这个用户名并发送到服务器端。但我不知道该怎么做。

我看到了这个问题:How to send data to socket.io from react?

可能这就是我需要的,但我不知道如何使用它。我真的很困惑:(

import React,{ useState,useEffect } from "react";
const mongoose = require("mongoose");
const [username,setUsername] = useState([]);

const MessageSchema = mongoose.Schema({
    date: {
        type: Date,required: true,},content: {
        type: String,minLength: 1,user: {
        type: String,}

});

MessageSchema.statics.latest = (count) => {
    return MessageModel.find({}).sort({"_id": "desc"}).limit(count);
}

MessageSchema.statics.create = (content) => {

    useEffect(()=>{
    
        fetch('http://localhost:8000/api/current_user/',{
          headers: {
            Authorization: `JWT ${localStorage.getItem('token')}`
          }
        })
          .then(res => res.json())
          .then(json => {
            setUsername(json.id);
          });
      
    },[]) 

    let msg = new MessageModel({
        date: new Date(),content: content,user: username,});

    return msg.save();
}


const MessageModel = mongoose.model("Message",MessageSchema);



module.exports = {
    Schema: MessageSchema,Model: MessageModel
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。