首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用React限制/允许基于客户端ip地址的资源

使用React限制/允许基于客户端ip地址的资源
EN

Stack Overflow用户
提问于 2019-11-26 17:24:07
回答 1查看 2.7K关注 0票数 2

我正在构建一个react应用程序,并希望允许/拒绝对某些组件的访问(主要是基于客户端的位置过滤IP\MAC)。

当客户端从互联网连接时,是否可以限制路由以拒绝对演示文稿的访问,允许通过LAN连接时的访问?

我想我找到了另一种方法,我将保持问题的开放性,寻找alternatives.

  • I读取客户端不应该能够看到它的ip地址(浏览器安全),而这应该在服务器端完成(这是一种直接的方法,如上面的文章所提到的)(任何人都能证实这一点)。

  • 解决方案是找到客户端的网关地址(通常使用NAT),并与我的网关地址进行比较,如果它们在局域网内。

  • I在计算机上出现了一种情况,我可以在计算机上看到ip地址,在移动/手机上,我不能,需要

代码语言:javascript
复制
    import React from 'react';

    export default () => {
      const [addrObj, setAddrObj] = React.useState({});
      const fetchAddrData = async () => 
          await fetch('http://jsonip.com')
            .then(res => res.json())
            .then(setAddrObj);

      React.useEffect(() => {fetchAddrData()},[])

      return (
        <>
         <h3>Sample Page</h3>    
         <h4>addr: {addrObj.ip}</h4>
        </>
      )
    }
EN

回答 1

Stack Overflow用户

发布于 2019-11-26 18:11:23

据我刚才所读到的,仅仅JS无法检索IP地址。您可能想用PHP将其存储到<head>中的JS变量中,如

代码语言:javascript
复制
<?php echo '<script>var ip = '.$_SERVER['REMOTE_ADDR'].'</script>' ?>

这样,您的JS就可以使用IP地址。

这篇文章可以帮助您跟踪位置,尽管您可能也希望使用PHP。

How to get client's IP address using JavaScript?

如果您真的不想使用PHP,那么本文将使用jQuery。不过,这是一个请求。我不知道表演对你有多重要。

https://www.geeksforgeeks.org/how-to-get-client-ip-address-using-javascript/

How to get client's IP address using JavaScript?

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59056335

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档