V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  Mutoo  ›  全部回复第 45 页 / 共 192 页
回复总数  3837
1 ... 41  42  43  44  45  46  47  48  49  50 ... 192  
2019-10-25 17:21:16 +08:00
回复了 ma836323493 创建的主题 问与答 大家写前端会开启 ESLint 吗?
sdk 这种第三方代码,直接加到 .eslintrc 白名单就行了,业务代码用 IDE 自动格式化一遍,差不多就通过 eslint 了。代码风格都是要团队协商配置好的
这些限制是现代浏览器提供的,由于 web 开发是一个非常复杂的环境,需要考虑到各方安全性。

就拿为什么要限制跨域访问来说,跨域这个限制本来是不在 HTTP 协议中的,早期的浏览器也没这些限制,自己写的原生 APP 就更不用说了。

但浏览器开发商为用户隐私着想,增设了这个限制,可以让用户的数据更加安全,也更多的用户愿意使用,使其在浏览器之争中获得更大的市场份额。

为什么跨域能保护用户隐私,举一个很简单的例子,如果我在 E 浏览器登录了 Facebook,在 E 浏览器请求我的私信页面,就能获得我的私信内容。如果没有跨域限制,你打开了一个第三方开发者的网站,这个网站尝试在后台偷偷加载 facebook 的私信页面,然后你的私信就被读取了。相比 Chrome,你会使用 E 这样的浏览器吗?。

解决这种跨站 请求伪造( CSRF )的方法有很多,但如果一个浏览器在客户端就能帮你设置一道防线,你是不是会更信任这个浏览器。

用原生开发之所以没限制,有一个原因是 APP 的受众比较单一,用户不会在你的原生应用里登录各种可能涉及隐私的服务,除非用户本来就授权你去获取这些数据。
开放的安全必须折中考虑,早期与 Web 相近的 Flash 有更开放的 API , 但即使如此,如果你要联网访问 flash player 就不允许你读本地文件。如果你要读本地文件,它就不允许联网访问。为什么要这样设计?因为怕恶意程序在你不知情的情况下随便将你的文件发到网络上去。毕竟 flash 可以在互联网上随意发布,没有一个第三方机构来审核它。

此外跨域访问一样是安全性考虑,防止了未授权访问的可能。减少的跨站请求伪造的危害。
服务器存在的意义不一定是用来中转消息,还一个作用是为两个没有公网 IP 的终端进行内网穿透( tcp/udp hole punching ),然后交换双方的外网 IP 及端口,使得双方可以点对点通讯。
如果要求没有服务器,双方都需要有开放的公网的 IP 以及端口。
2019-10-17 06:39:04 +08:00
回复了 Ja1 创建的主题 问与答 被外面道路施工噪音搞得整晚难以入睡,有何解决办法?
我前几年在厦门也是被附近的垃圾场的垃圾车吵死,凌晨四五点就开始排队按高分贝喇叭。打市长热线投诉过,打一次好过几天,然后没几周又继续。

当时录了十多个录像,给大家感受一下: https://v.youku.com/v_show/id_XMTI1MjgxNTIyOA==.html?spm=a2hzp.8253869.0.0

后来想想,还是用脚投票吧。于是出国了。
2019-10-11 08:08:42 +08:00
回复了 zhshch 创建的主题 问与答 谷歌 adsense 关于 ads.txt 的错误提示要怎么处理?
https://support.google.com/adsense/answer/7532444?hl=zh-Hans
注意:您的更改可能需要过几天才能应用到 AdSense 中。如果您的网站提交的广告请求较少,则最多可能需要一个月的时间。
2019-10-09 07:45:30 +08:00
回复了 zacharyjia 创建的主题 问与答 有没有这样一种编程语言
国内流行的游戏架构很多是静态语言+binding+脚本语言。
cocos2d-js (c++/js)
cocos2d-lua (c++/lua)
unity3d + tolua# (c#/lua)
性能不是问题,需要性能的放静态语言,需要灵活的放脚本语言。
2019-10-04 07:27:15 +08:00
回复了 jugelizi 创建的主题 程序员 如何看待前端在用户登录使用 url 地址传参的行为
@Mutoo 这里的泄漏不一定是对外泄漏,也有可能是对内泄漏。之差推特就犯过这类错误。
2019-10-04 07:26:36 +08:00
回复了 jugelizi 创建的主题 程序员 如何看待前端在用户登录使用 url 地址传参的行为
URL 传参会被日志和 CDN 记录,容易泄漏。后端的一些框架直接读 request[param] 是不区分 get/post 的,这部分得谨慎处理。
2019-10-04 07:01:12 +08:00
回复了 sdjl 创建的主题 程序员 JavaScript 是否可以让数组支持负数索引?
@shakespaces 其实不用,正取溢出 undefined, 负取溢出也应该是 undefined
2019-10-03 21:18:03 +08:00
回复了 sdjl 创建的主题 程序员 JavaScript 是否可以让数组支持负数索引?
不要太依赖原生的函数,或者是语法糖。
且不说 js 数组的原生函数超级混乱,有时直接修改原数组,有时返回的是浅拷贝。
不如自己实现函数式接口更加方便,简单几行就能实现。

pyGet = (arr, idx) => arr[(idx+arr.length)%arr.length];
pyGet([1,2,3], -1) // 3

柯里化一下就更通用了

pyGet = currying((arr, idx) => arr[(idx+arr.length)%arr.length]);
// or pyGet = arr => idx => arr[(idx+arr.length)%arr.length]);

a = pyGet([1,2,3]);
a(-1); //3

与原生相比,上面的写法不会更费劲。
另外 a = [1,2,3] 本质是 a = new Array(1,2,3); 的语法糖。
这也是为什么 js 没有办法提供[]的代理或重载(语法糖层面)。
典型的一个人干两个人的活呀,你对公司的要求:工资翻倍。
2019-09-26 12:16:03 +08:00
回复了 uasier 创建的主题 问与答 各位自己的域名和自己的网名一样嘛
https://mutoo.im

import im.mutoo.*;
2019-09-26 07:26:17 +08:00
回复了 b00tyhunt3r 创建的主题 程序员 c 语言套接字编程怪事件
getaddrinfo 的参数是 &c
而 freeaddrinfo 的参数是 c
前者传的是指针 c 的地址,可以利用此修改该地址的值,即修改 c 本身
后者则是值传递,传的是指针 c 的内容,顾无法修改 c 本身
2019-09-19 14:53:44 +08:00
回复了 frozenway 创建的主题 随想 如果有一天遇到 UFO 了或者被 UFO 劫持了,怎么办?
自从手机拍照普及后,UFO 的新闻日渐没有销路。
2019-09-10 11:38:54 +08:00
回复了 leverestfish 创建的主题 程序员 迫于要学数据库,求 Mac 上 access 的替代方案
一键安装 mamp (mysql+phpMyAdmin)
https://www.mamp.info/en/

前者数据库,后者是 web-based 用户界面
1 ... 41  42  43  44  45  46  47  48  49  50 ... 192  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5241 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 49ms · UTC 06:46 · PVG 14:46 · LAX 23:46 · JFK 02:46
Developed with CodeLauncher
♥ Do have faith in what you're doing.