我正在做一个MERN堆栈(MongoDB,Express,React,Node)项目,我需要在React组件中向数据库发出HTTP请求,以获取模型的字段。我使用Axios(可以使用任何其他方法),但问题是我想隐藏URL,但不知道如何隐藏。
对我来说,重要的是获取“category”字段并将其显示在组件中
import React, {useState, useEffect} from "react"
import Heading from "../../common/Heading"
import "./Location.css"
import axios from 'axios'
const Location = () => {
const [locations, setLocations] = useState([]);
useEffect(() => {
const fetchData = async () => {
const result = await axios.get('http://localhost:5000/properties/categories'//this is what I want to hide);
setLocations(result.data);
};
fetchData();
}, []);
return (
<>
<section className='location padding'>
<div className='container'>
<Heading title='Explore By Location' subtitle='Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam.' />
<div className='content grid3 mtop'>
{locations.map((item, index) => (
<div className='box' key={index}>
<img src={} alt='' />
<div className='overlay'>
<h5>{}</h5>
<p>
<label>{}</label>
<label>{}</label>
<label>{}</label>
</p>
</div>
</div>
))}
</div>
</div>
</section>
</>
)
}
export default Location
为了以防万一,这段代码还没有完成。服务器是用Express和Mongoose设置的,作为与MongoDB交互的一种方式。
有人告诉我,他们只发出没有URL的POST请求,总是发送相同的JSON,然后用base 64对后端使用的JSON解析进行加密,并将所有请求指向相同的URL。
我知道在前端留下这样的URL不是一个好主意,即使它没有得到任何敏感信息,只是不知道当完成它是否会通过SSL证书测试。
此外,我的应用程序根本没有和使用敏感信息,所有请求都是GET,以查看存储在DB中的信息
1条答案
按热度按时间w6mmgewl1#
您可以找到在运行时生成URL字符串的变通方法,但这真的不值得付出努力,因为您将从客户端的浏览器向后端发送这些请求,他们可以检查网络选项卡并查看向后端发出的请求,这很好。
您可以将注意力转移到前端和后端之间更好、更安全的通信上。例如: