DarrenWang

心向往之


  • 首页

  • 归档

避免SQL注入

发表于 2018-08-03 | 分类于 go开发

9.4 避免SQL注入

什么是SQL注入

SQL注入攻击(SQL Injection),简称注入攻击,是Web开发中最常见的一种安全漏洞。可以用它来从数据库获取敏感信息,或者利用数据库的特性执行添加用户,导出文件等一系列恶意操作,甚至有可能获取数据库乃至系统用户最高权限。

阅读全文 »

存储密码

发表于 2018-08-03 | 分类于 go开发

9.5 存储密码

过去一段时间以来, 许多的网站遭遇用户密码数据泄露事件, 这其中包括顶级的互联网企业–Linkedin, 国内诸如CSDN,该事件横扫整个国内互联网,随后又爆出多玩游戏800万用户资料被泄露,另有传言人人网、开心网、天涯社区、世纪佳缘、百合网等社区都有可能成为黑客下一个目标。层出不穷的类似事件给用户的网上生活造成巨大的影响,人人自危,因为人们往往习惯在不同网站使用相同的密码,所以一家“暴库”,全部遭殃。

阅读全文 »

加密和解密数据

发表于 2018-08-03 | 分类于 go开发

9.6 加密和解密数据

前面小节介绍了如何存储密码,但是有的时候,我们想把一些敏感数据加密后存储起来,在将来的某个时候,随需将它们解密出来,此时我们应该在选用对称加密算法来满足我们的需求。

阅读全文 »

小结

发表于 2018-08-03 | 分类于 go开发

9.7 小结

这一章主要介绍了如:CSRF攻击、XSS攻击、SQL注入攻击等一些Web应用中典型的攻击手法,它们都是由于应用对用户的输入没有很好的过滤引起的,所以除了介绍攻击的方法外,我们也介绍了了如何有效的进行数据过滤,以防止这些攻击的发生的方法。然后针对日异严重的密码泄漏事件,介绍了在设计Web应用中可采用的从基本到专家的加密方案。最后针对敏感数据的加解密简要介绍了,Go语言提供三种对称加密算法:base64、aes和des的实现。

阅读全文 »

国际化和本地化

发表于 2018-08-03 | 分类于 go开发

10 国际化和本地化

为了适应经济的全球一体化,作为开发者,我们需要开发出支持多国语言、国际化的Web应用,即同样的页面在不同的语言环境下需要显示不同的效果,也就是说应用程序在运行时能够根据请求所来自的地域与语言的不同而显示不同的用户界面。这样,当需要在应用程序中添加对新的语言的支持时,无需修改应用程序的代码,只需要增加语言包即可实现。

阅读全文 »

设置默认地区

发表于 2018-08-03 | 分类于 go开发

10.1 设置默认地区

什么是Locale

Locale是一组描述世界上某一特定区域文本格式和语言习惯的设置的集合。locale名通常由三个部分组成:第一部分,是一个强制性的,表示语言的缩写,例如”en”表示英文或”zh”表示中文。第二部分,跟在一个下划线之后,是一个可选的国家说明符,用于区分讲同一种语言的不同国家,例如”en_US”表示美国英语,而”en_UK”表示英国英语。最后一部分,跟在一个句点之后,是可选的字符集说明符,例如”zh_CN.gb2312”表示中国使用gb2312字符集。

阅读全文 »

本地化资源

发表于 2018-08-03 | 分类于 go开发
# 10.2 本地化资源 前面小节我们介绍了如何设置Locale,设置好Locale之后我们需要解决的问题就是如何存储相应的Locale对应的信息呢?这里面的信息包括:文本信息、时间和日期、货币值、图片、包含文件以及视图等资源。那么接下来我们将对这些信息一一进行介绍,Go语言中我们把这些格式信息存储在JSON中,然后通过合适的方式展现出来。(接下来以中文和英文两种语言对比举例,存储格式文件en.json和zh-CN.json)
阅读全文 »

小结

发表于 2018-08-03 | 分类于 go开发

10.4 小结

通过这一章的介绍,读者应该对如何操作i18n有了深入的了解,我也根据这一章介绍的内容实现了一个开源的解决方案go-i18n:https://github.com/astaxie/go-i18n 通过这个开源库我们可以很方便的实现多语言版本的Web应用,使得我们的应用能够轻松的实现国际化。如果你发现这个开源库中的错误或者那些缺失的地方,请一起参与到这个开源项目中来,让我们的这个库争取成为Go的标准库。

links

阅读全文 »

国际化站点

发表于 2018-08-03 | 分类于 go开发
# 10.3 国际化站点 前面小节介绍了如何处理本地化资源,即Locale一个相应的配置文件,那么如果处理多个的本地化资源呢?而对于一些我们经常用到的例如:简单的文本翻译、时间日期、数字等如果处理呢?本小节将一一解决这些问题。
阅读全文 »

错误处理,调试和测试

发表于 2018-08-03 | 分类于 go开发

11 错误处理,调试和测试

我们经常会看到很多程序员大部分的”编程”时间都花费在检查bug和修复bug上。无论你是在编写修改代码还是重构系统,几乎都是花费大量的时间在进行故障排除和测试,外界都觉得我们程序员是设计师,能够把一个系统从无做到有,是一项很伟大的工作,而且是相当有趣的工作,但事实上我们每天都是徘徊在排错、调试、测试之间。当然如果你有良好的习惯和技术方案来直面这些问题,那么你就有可能将排错时间减到最少,而尽可能的将时间花费在更有价值的事情上。

阅读全文 »
1…678…10

王梦涛

100 日志
4 分类
4 标签
GitHub Weibo
© 2016 – 2018 王梦涛
由 Hexo 强力驱动 v3.6.0
|
主题 – NexT.Pisces v6.3.0