什么是jwt及如何使用

别再使用 JWT 作为 Session 系统 问题重重且很危险 Java基基的博客 CSDN博客

很多朋友对于什么是jwt及如何使用和为什么不建议用jwt不太懂,今天就由小编来为大家分享,希望可以帮助到大家,下面一起来看看吧!

本文目录

  1. 什么是jwt及如何使用
  2. 前端开发用什么工具比较好啊

什么是jwt及如何使用

JSONWebToken(JWT)是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准(RFC7519)。来自JWTRFC7519标准化的摘要说明:JSONWebToken是一种紧凑的,URL

安全的方式,表示要在双方之间传输的声明。JWT一般被用来在身份提供者和服务提供者间传递被认证的用户身份信息,以便于从资源服务器获取资源,也可以增加一些额外的其它业务逻辑所必须的声明信息,该Token也可直接被用于认证,也可被加密。

三、jwt认证流程

1.客户端调用登录接口(或者获取token接口),传入用户名密码。

2.服务端请求身份认证中心,确认用户名密码正确。

3.服务端创建JWT,返回给客户端。

4.客户端拿到JWT,进行存储(可以存储在缓存中,也可以存储在数据库中,如果是浏览器,可以存储在Cookie中)在后续请求中,在HTTP请求头中加上JWT。

5.服务端校验JWT,校验通过后,返回相关资源和数据。

四、jwt组成

JWT是由三段信息构成的,第一段为头部(Header),第二段为载荷(Payload),第三段为签名(Signature)。每一段内容都是一个JSON对象,将每一段JSON对象采用BASE64编码,将编码后的内容用.链接一起就构成了JWT字符串,header.payload.signature。

示例如下:

token=encodeBase64(header)+'.'+encodeBase64(payload)+'.'+encodeBase64(signature)

token看起来像这样:

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJsb2dnZWRJbkFzIjoiYWRtaW4iLCJpYXQiOjE0MjI3Nzk2Mzh9.gzSraSYS8EXBxLN_oWnFSRgCzcmJmMjLiuyu5CSpyHI

编码、解码

一般情况下,编码解码是为了方便以字节的方式表示数据,便于存储和网络传输。整个jwt串会被置于http的Header或者url中,为了不出现乱码解析错误等意外,编码是有必要的。在jwt中以.分割的三个部分都经过base64编码(secret部分是否进行base64编码是可选的,header和payload则是必须进行base64编码)。

注意,编码的一个特点:编码和解码的整个过程是可逆的。得知编码方式后,整个jwt串便是明文了

payload是一定不能够携带敏感数据如密码等信息的

1.头部(header)

头部用于描述关于该JWT的最基本的信息,例如其类型以及签

名所用的算法等,可以被表示成一个JSON对象。

{

type:"JWT",

"alg":"HS256"

}

在头部指明了签名算法是HS256算法。

2.载荷(payload)

载荷就是存放有效信息的地方。有效信息包含三个部分:

1.标准中注册的声明

2.公共的声明

3.私有的声明

标准中注册的声明(建议但不强制使用)

iss:JWT签发者

sub:JWT所面向的用户

aud:接收JWT的一方

exp:JWT的过期时间,这个过期时间必须要大于签发时间

nbf:定义在什么时间之前,该JWT都是不可用的

iat:JWT的签发时间

jti:JWT的唯一身份标识,主要用来作为一次性token,从而回避重放攻击。

公共的声明

公共的声明可以添加任何的信息,一般添加用户的相关信息

或其他业务需要的必要信息.但不建议添加敏感信息,因为该

部分在客户端可解密。

私有的声明

私有声明是提供者和消费者所共同定义的声明,一般不建议

存放敏感信息,因为base64是对称解密的,意味着该部分信

息可以归类为明文信息。

3.签名(signature)

创建签名需要使用Base64编码后的header和payload以及一个秘钥。将base64加密后的header和base64加密后的payload使用.连接组成的字符串,通过header中声明的加密方式进行加盐secret组合加密,然后就构成了jwt的第三部分。

比如:HMACSHA256(base64UrlEncode(header)+"."+base64UrlEncode(payload),secret)

五、应用场景

一次性安全验证

1)激活邮件

用户注册后需要发一封邮件让其激活账户,通常邮件中

需要有一个链接,这个链接需要具备以下的特性:能够标识

用户,该链接具有时效性(通常只允许几小时之内激活),

不能被篡改以激活其他可能的账户…这种场景就和jwt

的特性非常贴近,jwt的payload中固定的参数:iss

签发者和exp过期时间正是为其做准备的。

2)验证码

restfulapi的无状态认证

使用jwt来做restfulapi的身份认证也是值得推崇的一种使用方案。客户端和服务端共享secret;过期时间由服务端校验,客户端定时刷新;签名信息不可被修改…springsecurityoauthjwt提供了一套完整的jwt认证体系。

六、注意事项

jwt代替session做回话管理,需要考虑一下问题

1.jwttoken泄露了怎么办?

传统的session+cookie方案,如果泄露了sessionId,别人同样可以盗用你的身份。扬汤止沸不如釜底抽薪,不妨来追根溯源一下,什么场景会导致你的jwt泄露。

遵循如下的实践可以尽可能保护你的jwt不被泄露:

使用https加密你的应用,返回jwt给客户端时设置httpOnly=true并且使用cookie而不是LocalStorage存储jwt,这样可以防止XSS攻击和CSRF攻击

2.secret如何设计

jwt唯一存储在服务端的只有一个secret,个人认为这个secret应该设计成和用户相关的属性,而不是一个所有用户公用的统一值。这样可以有效的避免一些注销和修改密码时遇到的窘境。

3.注销和修改密码

jwt是无状态的,服务端通过计算来校验有效性。没有存储起来,所以即使客户端删除了jwt,但是该jwt还是在有效期内,只不过处于一个游离状态.

分析下痛点:注销变得复杂的原因在于jwt的无状态。

我提供几个方案,视具体的业务来决定能不能接受。

仅仅清空客户端的cookie,这样用户访问时就不会携带jwt,服务端就认为用户需要重新登录。这是一个典型的假注销,对于用户表现出退出的行为,实际上这个时候携带对应的jwt依旧可以访问系统。

清空或修改服务端的用户对应的secret,这样在用户注销后,jwt本身不变,但是由于secret不存在或改变,则无法完成校验。这也是为什么将secret设计成和用户相关的原因。

借助第三方存储自己管理jwt的状态,可以以jwt为key,实现去redis一类的缓存中间件中去校验存在性。方案设计并不难,但是引入redis之后,就把无状态的jwt硬生生变成了有状态了,违背了jwt的初衷。实际上这个方案和session都差不多了。

修改密码

假设号被到了,修改密码(是用户密码,不是jwt的secret)之后,盗号者在原jwt有效期之内依旧可以继续访问系统,所以仅仅清空cookie自然是不够的,这时,需要强制性的修改secret。

4.续签问题

续签问题可以说是抵制使用jwt来代替传统session的最大原因,因为jwt的设计中我就没有发现它将续签认为是自身的一个特性。传统的cookie续签方案一般都是框架自带的,session有效期30分钟,30分钟内如果有访问,session有效期被刷新至30分钟。而jwt本身的payload之中也有一个exp过期时间参数,来代表一个jwt的时效性,而jwt想延期这个exp就有点身不由己了,因为payload是参与签名的,一旦过期时间被修改,整个jwt串就变了,jwt的特性天然不支持续签!

七、jwt优缺点

jwt优点

跨语言,JSON的格式保证了跨语言的支撑

基于Token,无状态

占用字节小,便于传输

缺点

不可续签

token无法注销

不建议用jwt替代session做会话管理

前端开发用什么工具比较好啊

摘要:在我认识的所有程序员里,每个人几乎都有专属于自己的常用工具和相关资源,今天给大家奉上数十个程序员硬核工具,我相信这里总有一款工具是属于你的!

程序员生产力工具大全如下:

1.Idea-IntellijIDEA(java编程语言开发的集成环境)

业界排名第一的java开发工具,非常非常好用,如果还在用eclipse的朋友,赶紧来体验一把,你一定会爱上她的。

2.SecureCRT(SSH终端仿真程序)

SecureCRT是一款终端仿真程序,支持SSH(SSH1和SSH2)以及Telnet和rlogin协议。SecureCRT用于连接运行包括Windows、UNIX和VMS在内的远程系统的理想工具。

3.Termius(全平台的远程终端)

termius是一款全平台的远程终端,Termius不仅涵盖了Windows、Linux、OSX,还变态得支持Android和iOS(以后在地铁、公交上都可以随时拿出手机来排查线上问题啦,还真是广大程序员的福音呢。

4.GoogleChrome(谷歌浏览器)

GoogleChrome是一款由Google公司开发的网页浏览器,该浏览器基于其他开源软件撰写,包括WebKit,目标是提升稳定性、速度和安全性,并创造出简单且有效率的使用者界面。

5.iTerm(为MacOSX编写的终端仿真程序)

iTerm是一个为MacOSX编写的,功能齐全的终端仿真程序;目标是在为用户提供OSX下最佳的命令行体验;字母i代表了本地苹果的外观和风格的程序界面,并把重点放在完整的国际支持;它合并由两个项目,CTerminal和TerminalX,而这两者都是基于JTerminal项目;该软件非常有实用和易用性。

6.VisualStudioCode(简称“VSCode”,编写现代Web和云应用的跨平台源代码编辑器)

重新定义和优化了代码编辑,以便生成和调试新式Web应用程序和云应用程序。也是著名的文本编辑器,它是轻量级的,vSCode的一大特点就是你可以通过多种方式来调整设置,而且Vim可以和VScode集成在一起,它还带有一个集成终端,可用的扩展太多,使开发人员的工作变得更加轻松。我最喜欢的一些扩展是AWSToolkit,ESLint,LiveServer,LiveShare,Prettier-代码格式化程序,YAML,LiveSass编译器,Docker等。

7.VMwareFusion&VMwareworkstation(为计算机开发的虚拟机管理程序)

是在计算机上无缝运行Windows的最佳方式,可确保Windows应用程序在计算机上实现无缝运行可以在基于Intel的计算机上无缝运行Windows、Linux以及其他PC等多个操作系统,进而构建、测试或演示软件。

8.NavicatPremium(数据库管理工具)

Navicatpremium是一款数据库管理工具,是一个可多重连线资料库的管理工具,它可以让你以单一程式同时连线到MySQL、SQLite、Oracle及PostgreSQL资料库,让管理不同类型的资料库更加的方便。

9.Postman(api调试工具)

简单来说,四个词,简单、实用、大方、美观!postman这款网页调试工具的windows客户端,功能强大的HTTP调试与模拟插件。使用Postman可以进行API开发、请求、调试,除了它,还可以使用lnsomnia和InsomniaDesigner作为API文档。

10.RedisDesktopManager(一款可视化redis管理工具)

RedisDesktopManager是一款简单快速、跨平台的Redis桌面管理工具,也被称作Redis可视化工具,RedisDesktopManager官方版是一款开源软件,支持通过SSHTunnel连接,支持windows、mac等多平台。

11.Dash(基于MAC的API文档浏览器和代码片段管理器)

“开发者不可或缺的杰作。”Dash可让您的Mac即时离线访问200多个API文档集。立刻搜索离线文件集200层+的API,100+备忘单和href="">更多功能。您甚至可以"">生成自己的文档集或href="">请求包含href="">文档集。

12.Fiddler&Wireshark(http抓包工具)

Fiddler和Wireshark都是进行抓包的工具:所谓抓包就是将网络传输发送与接收的数据包进行截获、重发、编辑、转存等操作,也用来检查网络安全。作为开发者,经常想调试一下http请求发送的数据的详情,那么可以使用这2款软件。用抓包工具wireshark的人相对来说更多一些。

13.HBuilderX(HTML5的Web开发工具)

当前最快的HTML开发工具,强大的代码助手帮你快速完成开发,最全的语法库和浏览器兼容性数据让浏览器碎片化不再头痛。作为HBuilder下一代的全新编辑器,HBuilderX被定位为ide和编辑器的完美结合,除了对某种语言的语法分析、提示、转到定义、调试,同时加强了对通用文本处理能力,界面更加清爽,拥有比上一代更加有效的快捷键体系。

14.MobaXterm(远程终端控制软件,集串口,SSH远程登录和FTP传输三合一的工具)

多功能终端MobaXtermProfessionalEdition是一款豪华、全功能的终端软件。MobaXterm带来了所有必要的Unix命令到Windows桌面,在开箱单便携式exe文件。MobaXterm允许您启动远程会话。远程shell,MobaXterm远比Putty好用,您可以选择创建SSH,远程登录,Rlogin,RDP,VNC,XDMCP,FTP,SFTP或串行会话。

15.SublimeText(跨平台代码编辑器)

http://www.sublimetext.cn/

SublimeText是一款用于代码、标记和散文的精致文本编辑器。SublimeText中文网致力于为广大国内开发者提供详尽的中文文档、使用说明等,助力开发者快速掌握这个编辑器。

16.webstorm(专业的HTML编辑工具)

web开发的必备的一款开发神器,比如写js、页面、css,那么这款软件用起来非常顺手。此软件和idea出自于同一家公司,这家公司做了很多异常好用的软件,基本上你需要的各种开发相关的IDE,这家公司都生产。可以说是“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScriptIDE”。新版对JavaScript,TypeScript和CSS支持更好,改进了Vue.js的体验,并为Jest集成增加了新功能。

17.Xshell(功能强大的终端模拟器)

linux原创控制软件,完全免费且非常稳定的SSH客户端,支持多种远程协议,提供了很多特色与高级功能,简体中文界面也让你轻松管理远程服务器。Xshell的Screen会话不闪屏,而且可以回滚;Script的执行顺序可以调整;可以同时发送指令到多个session;支持布局切换等。

18.SwitchHosts(修改Hosts文件的工具)

这是用于在多个HOSTS之间进行切换。可在公用hosts文件、当前系统hosts、本地方案和在线方案间进行切换。作为一名开发人员,经常需要修改本地host,你还是通过修改host文件来操作的么?那样太慢了,这里建议大家使用switchhosts这款软件,可以快速修改本地host,非常好用。

其他工具:

1.CodeIf(智能命名):https://unbug.github.io/codelf

大部分开发者都或多或少遇到过变量命名的烦恼,如果命名不规范,不仅会影响开发的效率,而且对后面维护的同学来说也是一个不小的挑战,因为他要去揣摩你这个变量的含义。随着项目越来越复杂,变量和函数数量越来越多,虽然每个编程语言都有各种命名规范,但是也不能解决所有的问题。

“计算机科学里两件最难的事:缓存失效和命名。”Codelf通过搜索在线开源平台Github,Bitbucket,GoogleCode,Codeplex,Sourceforge,FedoraProject的项目源码,帮开发者从中找出已有的匹配关键字的变量名,从而帮助为变量名苦恼的开发者命名。这个搜索服务支持直接搜索中文。

同时可以在自己用的编辑器里安装插件,支持VSCode、Atom、SublimeText和Chrome。

2.DocsChina-印记中文:https://www.docschina.org

这是一个前端中文文档合集,进入网站可以看到开发中经常使用的前端中文文档。如果你的英文实在不怎么好,还在为找中文文档而烦恼,这里将是你非常好的选择。记得放到自己的浏览器收藏夹里哦!

3.any-rule(正则表达大全):http://github.com/any86/any-rule

any-rule维护了一个常用正则表达式合集,并且本身是一个支持Web/VSCode/idea/AlfredWorkflow多平台的正则表达式工具。

4.tool.lu(在线工具):https://tool.lu

程序员总是有很多小工具要使用,比如图片、Base64编码、Markdown编辑器时间戳转换,进制转换等,在线运行各种语言代码。这个网站包含了太多程序员需要用到的小工具了。比如你想运行点JAVA代码,又不想麻烦的在系统中安装JAVA环境,可以使用里边的在线运行代码工具,然后选择JAVA,写点JAVA代码就可以直接运行了。

5.Baomitu(前端静态源库):https://cdn.baomitu.com

这个静态资源库是支持HTTP/2的CDN服务,有了它,如果你是自己的小型项目或者是做测试就不用下载任何的代码库,直接粘贴地址过来用就可以,因为是国内的CDN库,速度还非常的快。

6.Typora-Markdown(编写工具):https://www.typora.io

一款实用的Markdown编写工具,所见即所得,用Markdown编写文章是一个程序员的标准配置,也就是标配。现在有很多在线工具都支持Markdown,什么有道云笔记、雀语,、印象笔记等。这种简单的界面,沉浸式的编写,清晰的大纲,它就像一件称手的兵器,让你一旦拥有就爱不释手。

7.Snipaste(简单便捷的截图软件):https://zh.snipaste.com/download.html

一款免费的桌面截图软件,功能强大,使用方便,支持任何屏幕位置截图,支持窗口截图,支持快捷方式截图。您可通过截取贴图,使两张图合并为一张图,还能调整截图文字图像等等,是一款非常强大的贴图软件,喜欢此款贴图软件的朋友不要错过。

8.Captura(最好用的开源录屏、gif动态图片制作工具)

官网:https://captura.updatestar.com/github:https://github.com/MathewSachin/Captura

通过这款工具可以帮助你轻松录制各种视频。支持全屏录制、区域录制两种方式,全屏录制可以录制全部的电脑屏幕,将电脑屏幕上所有的动态都录制下来,该软件还拥有视频编解码器,可以对视频进行解码,支持mp4、avi、GIF、webm等格式,可以满足一般的解码需要。还支持屏幕截图、剪贴板,简单的图像编辑等功能,是一款非常好用的屏幕录像工具。

9.向日葵(远程控制软件):https://sunlogin.oray.com/

向日葵远程控制是一款提供远程控制服务的软件。向日葵远程控制支持主流操作系统Windows、Linux、Mac、Android、iOS跨平台协同操作,在任何可连入互联网的地点,都可以轻松访问和控制安装了向日葵远程控制客户端的设备。整个远控过程,可通过浏览器直接进行,无需再安装软件。

10.Everything(本地文件检索工具):http://www.voidtools.com/support/everything/

由voidef="">tools开发的一款文件搜索工具,这款软件是基于名称实时定位文件和目录。Everthing功能强大,体积小巧,第一次安装使用时会建立一个索引数据库,将所有文件和文件夹的名称导入其中,后续使用能够以极快的速度快速搜索,查找到你所需要的文件。

11.StarUML(UML画图工具)

画uml图的一款神器,类图、时序图、流程图、状态图等等,都可以用这款工具轻松应对。

12.uTools(生产力工具集):https://u.tools/

一个极简、插件化、跨平台的现代化桌面软件。通过自由选配丰富的插件,打造你得心应手的工具集合。这个工具,我只能说他是一款神奇,太牛逼,这款工具中汇集了很多好用的工具,可以通过这款工具秒开电脑上的各种软件。

搜索资源网站工具:

1.Bing

Bing国际版:https://cn.bing.com/感觉比某度要好用多了。

2.DuckDuckGo

DuckDuckGo:https://duckduckgo.com/从官网的介绍来看这个搜索引擎不收集用户信息,而且没有广告。

3.StackOverflow

StackOverflow:https://stackoverflow.com/我们如果常用Google,很多技术问题的答案就在这个网站上,如果你无法使用Google可以在这个网站上直接检索就好了。

4.Gitlogs

Gitlogs:https://www.gitlogs.com/Gitlogs是专门针对GitHub项目的搜索引擎,我们通过他可以快速找到想要项目。

5.jiumosearch

文档搜索引擎jiumosearch鸠摩搜书:https://www.jiumodiary.com/可以用来找一些技术文档手册,很多在百度网盘里。

6.Ebooke

Ebooke:https://ebookee.org/Ebookee是一个基于互联网并提供免费电子图书下载的搜索引擎网站。

7.Iconfinder

图标搜索:https://www.iconfinder.com/用来查找logo图片。

8.TinEye

TinEye:https://www.tineye.com用图片来检索图片,我们可以上传图片或输入图片的URL来检索。

9.SemanticScholar

SemanticScholar:https://www.semanticscholar.org/SemanticScholar是一个免费学术搜索引擎,其检索结果来自于期刊、学术会议资料或者是学术机构的文献。

10.LibreStock

LibreStock:https://librestock.com/LibreStock上可以检索一些优质的高清图片。

http://11.CCSearch

CCSearch:https://ccsearch.creativecommons.org/CCSearch上搜索到的图片资源都是无版权的,我们可以免费的使用。

12.Pexels

Pexels:https://www.pexels.com/高质量的图片网站,可以免费使用。

13.Unsplash

Unsplash:https://unsplash.com/免费高清素材网站。

14.TheAppStore

TheAppStore:https://theappstore.org/TheAppStore是一个针对苹果手机、iPad、Mac设备的应用搜索工具。

在线画图工具:

?在线画图工具ProcessOn:https://www.processon.com/?在线画图工具http://draw.io:https://app.diagrams.net/?在线思维导图工具:http://www.mindline.cn/webapp?PlantUML在线编辑器:http://haha98k.com/

在线开发辅助工具:

日常开发经常会用到一些辅助工具我总结为8大类,包括:编解码工具、转换工具、正则工具、编译工具、网络工具、格式化工具、可视化工具、在线生成器、以及其他工具等等。具体列表如下:

在线编码工具:

BASE64编解码工具:https://base64.supfree.net/?MD5编码工具:https://www.zxgj.cn/g/md5?AES/DES加解密:http://www.fly63.com/tool/cipher/?JWT解码工具:http://jwt.calebb.net/?ASCII编解码工具:https://www.matools.com/code-convert-ascii?Unicode编解码工具:https://www.zxgj.cn/g/unicode?UTF-8编解码工具:https://www.zxgj.cn/g/utf8?字符串编解码工具:https://www.zxgj.cn/g/enstring?URL编解码工具:http://tool.chinaz.com/tools/urlencode.aspx?jdfwkey=lbixz1

在线转换工具:

在线ASCII码对照表:http://www.fly63.com/tool/ascii/?通用进制转换工具:https://www.zxgj.cn/g/jinzhi?在线浮点数十进制转换:http://www.binaryconvert.com/?RGB颜色转换:https://www.zxgj.cn/g/yansezhi?时间戳转换工具:https://www.zxgj.cn/g/unix?计量单位换算工具:http://www.fly63.com/tool/unitable/?在线JSON解析:http://www.json.cn/?在线JS代码格式化工具:https://prettier.io/playground/?SQL压缩/格式化工具:https://www.zxgj.cn/g/sqlformat?JSON和XML在线转换:https://www.zxgj.cn/g/jsonxml?JSON/YAML在线转换:http://www.fly63.com/tool/jsonyaml/?人民币大小写转换工具:http://www.fly63.com/tool/renmingbi/

正则表达式工具:

正则表达式调试工具:https://regexr.com/?正则表达式可视化工具:https://jex.im/regulex/

网络工具:

IP地址归属地查询:https://www.ip138.com/?IP地址查询:https://www.ipip.net/ip.html?HTTP在线接口测试工具:http://www.fly63.com/php/http/

在线编译运行工具:

C#在线编译运行:https://rextester.com/?C/C++在线编译调试:https://www.onlinegdb.com/?在线编译工具套装:https://c.runoob.com/

可视化/格式化工具:

在线前端编辑器:https://codepen.io/?在线数据可视化:https://flourish.studio/?在线JSON解析:http://www.json.cn/?在线CSS代码可视化工具:https://enjoycss.com/?XML格式化工具:https://www.zxgj.cn/g/xmlformat?在线JS代码格式化工具:https://prettier.io/playground/?SQL压缩/格式化工具:https://www.zxgj.cn/g/sqlformat?JSON和XML在线转换:https://www.zxgj.cn/g/jsonxml?JSON/YAML在线转换:http://www.fly63.com/tool/jsonyaml/

在线生成器:

UUID在线生成器:https://www.zxgj.cn/g/uuid?随机数生成器:https://www.zxgj.cn/g/suijishu

其他常用工具:

在线Nginx配置工具:https://nginxconfig.io/?在线对比工具:http://www.fly63.com/tool/textdiff/?在线Chrome浏览器插件:https://www.crx4chrome.com/?在线接口文档管理工具:http://www.docway.net/

在线素材工具:

如果你写文章,或者做视频,那就一定少不了要找素材,包括各种图片、背景、emoji表情、表情包、壁纸、视频、gif图等等。?免费透明背景图片素材:http://pngimg.com/?Emoji表情搜索:https://emoji.svend.cc/?Emoji表情包下载:https://emojiisland.com/?opensourceicons:https://feathericons.com/?表情包在线网站:https://fabiaoqing.com/?免费PNG图片库:https://pluspng.com/?ICON图标在线下载:https://www.iconfinder.com/?极简壁纸:https://bz.zzzmh.cn/?WallpaperAbyss壁纸:https://wall.alphacoders.com?Pixabay图片素材库:https://pixabay.com/zh/?Unsplash图片素材库:https://unsplash.com?Pexels图片素材库:http://www.pexels.com?NASA图片视频素材库:https://images.nasa.gov

设计制作类工具:

对于那些文章创作者和视频创作者而言,设计封面,做海报,设计LOGO,图片美化等等基本也是刚需。

这样大概率日常会用到一些简易好上手的在线设计制作类工具,比如在线P图、音/视频轻量化剪辑、logo制作、海报设计制作、图片美化、在线图片转换或生成等等。?在线PS:https://www.uupoop.com/?在线音频剪辑:https://www.weixinsyt.com/?在线视频剪辑:https://www.kapwing.com/?免费logo在线制作:http://www.uugai.com/?艺术字体在线生成:https://www.qt86.com/?在线表格转换工具:https://tableconvert.com/?在线海报设计工具:https://www.designcap.com/?图片智能放大工具:https://bigjpg.com/?二维码美化器:https://mh.cli.im/?在线代码截图工具:https://carbon.now.sh/?在线抠图工具:https://www.remove.bg/zh?ICO图标在线生成:http://www.fly63.com/php/ico/?SVG转PNG工具:http://www.fly63.com/tool/svg2img/?视频转GIF工具:http://www.fly63.com/tool/giftxt/?二维码在线生成器:http://www.fly63.com/tool/ewm/?二维码在线解码:http://www.fly63.com/php/decoder/

写辅助工具:

写文章的过程中经常会用到和写作相关的辅助工具,比方说:字数统计工具、Markdown格式的文章排版工具、图床网站、代码截图工具等等,所以下面这些在线工具就能很好地满足我的需求。?在线字数统计:https://www.eteste.com/?mdnicemarkdown排版工具:https://mdnice.com/?md2allmarkdown排版工具:http://md.aclickall.com/?在线图床神器:https://picx.xpoet.cn/?在线免费图床:https://sm.ms/?图壳图床:https://imgkr.com/?在线代码截图工具:https://carbon.now.sh/?在线短链接工具:https://urlify.cn/?在线文本替换:http://www.fly63.com/tool/textreplace/

在线办公工具:

部分在线工具主要用来处理一些和文档以及文稿相关的事情,经常用到的比如:在线的全套pdf处理和转换工具、各种各样多媒体文件间的相互转换工具、在线识别工具、在线压缩工具等等。?pdf在线处理工具1:https://smallpdf.com/cn/pdf-tools?pdf在线处理工具2:https://tools.pdf24.org/zh/?pdf转word在线工具:https://www.pdftoword.com/?在线多媒体转换器合集:https://cn.office-converter.com/?在线文字识别工具:https://ocr.wdku.net/?在线文件压缩工具:https://docsmall.com/

文档笔记工具:

好记性不如烂笔头,作为一个学习者,我觉得记笔记是必不可少的步骤。当然现在基本都做电子笔记和电子文档比较多。现如今各式各样优秀的文档工具和笔记软件鳞次栉比,好用的也有很多,整理成如下列表,这东西各有长处,使用哪个最合意还得看个人习惯和需求了。?印象笔记:https://www.yinxiang.com/?有道笔记:https://note.youdao.com/?OneNote:https://www.onenote.com/?幕布:https://mubu.com/?为知笔记:https://www.wiz.cn/?石墨文档:https://shimo.im/?Simplenote:https://simplenote.com/?语雀:https://www.yuque.com/

编程学习网:

?哔哩哔哩:https://www.bilibili.com/?C语言网:https://www.dotcpp.com/?cppreference:http://zh.cppreference.com/?中国大学MOOC:https://www.icourse163.org/?牛客网:http://www.nowcoder.com?网易公开课:http://open.163.com?CodeGym:https://codegym.cc/?BeginnersBook:https://beginnersbook.com/?JavaSED:http://www.javased.com/?codecademy:https://www.codecademy.com/?Coursera:https://www.coursera.org/?StackOverFlow:https://stackoverflow.com/?LeetCode:https://leetcode-cn.com/?LintCode:https://www.lintcode.com/

在线教程文档:

这部分主要集中了在做开发过程中随手参考所要用到的几乎所有在线教程和官方文档,有中文版文档的基本都优先列出来了,但更多时候是英文的官方文档。?Git中文教程:https://git-scm.com/book/zh/v2?SVN中文手册:http://svnbook.red-bean.com/nightly/zh/index.html?jQueryAPI中文文档:https://jquery.cuishifeng.cn/?Nginx中文文档:https://www.nginx.cn/doc/index.html?Kafka中文文档:https://kafka.apachecn.org/?Mybatis中文文档:https://mybatis.org/mybatis-3/zh/index.html?微信小程序官方文档:https://developers.weixin.qq.com/miniprogram/dev/framework/?Nodejs中文教程文档:http://nodejs.cn/learn?ApacheWebServer文档:http://httpd.apache.org/docs/?Spring文档中文版:https://www.springcloud.cc/spring-reference.html?Golang标准库文档中文版:https://studygolang.com/pkgdoc?Java8官方文档:https://docs.oracle.com/javase/8/docs/api/index.html?Maven官方文档:http://maven.apache.org/guides/?Tomcat8官方文档:http://tomcat.apache.org/tomcat-8.0-doc/index.html?SpringBoot官方文档:https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/?RabbitMQ官方文档:https://www.rabbitmq.com/documentation.html?RocketMQ官方文档:http://rocketmq.apache.org/docs/quick-start/?Dubbo中文文档:https://dubbo.apache.org/zh/docs/?Netty官方文档:https://netty.io/wiki/index.html?Elasticsearch官方文档:https://www.elastic.co/guide/en/elasticsearch/reference/current/index.html?SpringCloud官方文档:https://spring.io/projects/spring-cloud?Docker官方文档:https://docs.docker.com/get-started/?kubernetes中文文档:https://kubernetes.io/zh/docs/home/?thymeleaf官方文档:https://www.thymeleaf.org/documentation.html?Vue.js中文文档:https://cn.vuejs.org/v2/guide/?React.js官方文档:https://reactjs.org/docs/getting-started.html?Jenkins中文文档:https://www.jenkins.io/zh/doc/

华为云平台:

高效易用的低代码aPaaS平台-应用魔方AppCube:https://www.huaweicloud.com/product/appcube.html集华为研发实践、前沿研发理念、先进研发工具为一体的软件开发平台-软件开发平台DevCloud:https://www.huaweicloud.com/devcloud/

以上内容分享自华为云社区《吐血整理:程序员都在用什么工具?》,作者:考过IE励志当攻城狮,部分内容整理自互联网~

关于什么是jwt及如何使用到此分享完毕,希望能帮助到您。

JWT认证使用

本文内容来自互联网,若需转载请注明:https://bk.jguuu.com//12/100931.html