RandomUser 网站介绍
RandomUser 网站介绍
介绍
在 2013
年 8
月,该项目开始启动。项目的目的是:创建一个免费的、易于使用的服务,用于为应用的测试生成随机的用户数据。
使用
可以使用 AJAX
来调用随机用户生成器的 API
,返回的结果中将包含一个随机生成用户。如果使用了 jQuery
,可以调用 $.ajax()
方法:
$.ajax({
url: 'https://randomuser.me/api/',
dataType: 'json',
success: function(data) {
console.log(data);
}
});
结果
根据你的选择,API
会给你返回一个格式化的对象。你可以对它进行解析,并在应用中使用它们。
默认的格式是 JSON
。通过使用不同的格式化参数,可以获取不同格式的数据。
{
"results": [
{
"gender": "male",
"name": {
"title": "mr",
"first": "romain",
"last": "hoogmoed"
},
"location": {
"street": "1861 jan pieterszoon coenstraat",
"city": "maasdriel",
"state": "zeeland",
"postcode": 69217
},
"email": "romain.hoogmoed@example.com",
"login": {
"username": "lazyduck408",
"password": "jokers",
"salt": "UGtRFz4N",
"md5": "6d83a8c084731ee73eb5f9398b923183",
"sha1": "cb21097d8c430f2716538e365447910d90476f6e",
"sha256": "5a9b09c86195b8d8b01ee219d7d9794e2abb6641a2351850c49c309f1fc204a0"
},
"dob": "1983-07-14 07:29:45",
"registered": "2010-09-24 02:10:42",
"phone": "(656)-976-4980",
"cell": "(065)-247-9303",
"id": {
"name": "BSN",
"value": "04242023"
},
"picture": {
"large": "https://randomuser.me/api/portraits/men/83.jpg",
"medium": "https://randomuser.me/api/portraits/med/men/83.jpg",
"thumbnail": "https://randomuser.me/api/portraits/thumb/men/83.jpg"
},
"nat": "NL"
}
],
"info": {
"seed": "2da87e9305069f1d",
"results": 1,
"page": 1,
"version": "1.1"
}
}
API 错误
如果服务挂了,或者服务出问题了,将会返回一个key
为 error
的 json
格式的信息:
{
error: "Uh oh, something has gone wrong. Please tweet us @randomapi about the issue. Thank you."
}
请求多个用户
随机用户生成器允许的单次最大请求用户数是:5000
,请求人数的指定需要使用 results
参数:
https://randomuser.me/api/?results=5000
指定性别
通过在请求上添加 gender
参数,你可以指定随机生成的用户是否全都是男性、全都是女性、或者两者都有。gender
的有效值为:male
,female
,或者为空。如果传递其它的值,服务返回的用户既包含男性,也包含女性 :
https://randomuser.me/api/?gender=female
密码
默认地,密码是从 10000
个最常用的密码中随机选择的。从版本 1.1
开始,对于密码的生成规则,可以使用 password
选项,对密码的生成进行更多的控制。
https://randomuser.me/api/?gender=female
调用上面的 API
可以生成:由大、小写字母组成的、长度在 1 ~ 16
的密码。
使用下面的格式来指定密码的选项:
https://randomuser.me/api/?password=CHARSETS,MIN_LENGTH-MAX_LENGTH
OR
https://randomuser.me/api/?password=CHARSETS,MAX_LENGTH
上面格式中的 CHARSETS
可以使用下面的混合模式:
special !"#$%&'()*+,- ./:;<=>?@[\]^_`{|}~
upper ABCDEFGHIJKLMNOPQRSTUVWXYZ
lower abcdefghijklmnopqrstuvwxyz
number 0123456789
MIN_LENGTH
和 MAX_LENGTH
是生成密码的最小长度和最大长度。默认的范围是:8
到 64
。
下面是密码选项组合的示例:
// 32位长度的特殊字符
https://randomuser.me/api/?password=special,32
// 1~8位长度的大写字符
https://randomuser.me/api/?password=upper,1-8
// 8~64位长度的特殊字符、大写、小写、数字的组合
https://randomuser.me/api/?password=special,upper,lower,number
种子
种子(seed
)可以生成同样的用户集合。例如,名为 foobar
的种子将总是返回 Becky Sims
(1.0
版本)结果。种子可以是任意的字符串或字符的序列。
https://randomuser.me/api/?seed=foobar
格式
当前支持以下格式的数据:
JSON
(默认)PrettyJSON
或pretty
CSV
YAML
XML
使用 format
参数指定返回数据的格式:
https://randomuser.me/api/?format=csv
使用早期版本
如果有新的 API
版本发布,它可能会搞坏你的应用。通过下面的代码获取 API
:
https://randomuser.me/api/
上面的 API
将自动使用最新的 API
获取数据。
如果你不想应用受到新版 API
的影响,并想指定 API
版本,那应该使用下面的调用:
https://randomuser.me/api/1.1/
国家
你可以请求不同国家的随机用户。
图片将不会受到国家的影响,但是如果指定了国家,生成的用户数据,例如位置、电话、ID
等,会变得更为合理一些。
当前的随机用户支持下列国家:
v1.0: AU, BR, CA, CH, DE, DK, ES, FI, FR, GB, IE, IR, NL, NZ, TR, US
v1.1: AU, BR, CA, CH, DE, DK, ES, FI, FR, GB, IE, IR, NL, NZ, TR, US
这样来指定国家:
https://randomuser.me/api/?nat=gb
不指定该参数,默认将返回随机的国家。对于国家,可以有一些简单的控制,可以使用一个用逗号分割的列表:
https://randomuser.me/api/?nat=us,dk,fr,gb
页码
使用 page
参数,可以请求某个种子下的多个页码。
为了返回同样的数据,请确保使用同样的种子和同样的页码:
https://randomuser.me/api/?page=3&results=10&seed=abc
包含/不包含字段
有时候,你或许只想要一些随机的名称,而不需要一些不相关的数据(例如:位置,电话等)。这时,就需要使用 inc
和 exc
参数。这两个参数分别用来指定结果中包含和不包含的字段。
通过指定返回的字段,生成器可以通过跳过 CPU
密集型的字段(例如:login
)来节约时间。
包含与不包含的字段接收以逗号分隔的下列字段的集合:
gender
name
location
email
login
regstered
dob
phone
cell
id
picture
nat
如果你只想使用用户的 name
,gender
,nat
字段,那应该这样写:
https://randomuser.me/api/?inc=gender,name,nat
如果除了 login
数据,其它的用户信息都想要,那应该这样写:
https://randomuser.me/api/?exc=login
杂项
还可以给请求上添加一些其它的参数:
dl
-- 下载相应格式的结果:https://randomuser.me/api/?results=25&nat=gb,us,es&fmt=csv&dl
noinfo
-- 如果只想要数据,而不关心种子,数量,页码和版本:https://randomuser.me/api/?results=5&inc=name,gender,nat&noinfo
callback
-- 如果在JSONP
中想要有效载荷,使用callback
参数提供一个回调。该参数只在JSON
格式下有效:https://randomuser.me/api/?results=5&callback=randomuserdata
结束语
如果你发现了 API
的问题,或是想为这个项目的数据库贡献一些数据,那请你移驾访问我们的 Guthub Repo
。不胜感激!
RandomUser 网站介绍的更多相关文章
- github网站介绍、并使用git命令管理github(详细描述)
本章学习: 1)熟悉github网站 2)通过git命令远程管理github, 3)git命令使用ssh key密钥无需输入账号密码 1.首先我们来熟悉github网站 1.1 注册github 登录 ...
- gibhub上搭建个人静态网站介绍
之前学习过git的基本命令.今天介绍一下github上搭建个人网站的步骤. 在window系统上搭建gibhub个人网站(只能执行html.css和js文件),这就是纯静态页面. 步骤一:注册gith ...
- 商城04——门户网站介绍&商城首页搭建&内容系统创建&CMS实现
1. 课程计划 1.门户系统的搭建 2.显示商城首页 3.内容管理系统的实现 a) 内容分类管理 b) 内容管理 2. 门户系统的搭建 2.1. 什么是门户系统 从广义上来说,它将各种应用系 ...
- 【风马一族_Android】让app上传到Android市场的网站介绍
豌豆荚 开发者中心 http://open.wandoujia.com/account/info China app http://www.chinaapp.org
- Android一些网站介绍
1.开源镜像: Android SDK在线更新镜像服务器 中国科学院开源协会镜像站地址: IPV4/IPV6: http://mirrors.opencas.cn 端口:80 IPV4/IPV6: h ...
- IT开发、PM、UI/UE学习路线图(非原创-参考传智播客网站介绍)
文章大纲 一.Go语言+区块链学习路线图二.PHP学习路线图三.Python学习路线图四.C/C++学习路线图五.大数据学习路线图六.经理学习路线图七.UI/UE路线图八.参考文章 一.Go语言+区块 ...
- 网站推广优化(SEO,网站关键字优化,怎么优化网站,如何优化网站关键字)
网站推广优化教程100条(完整版)下面介绍新手建站推广完美教程,各位根据自己的实际情况酌情选用: 1.准备个好域名.①.尽量在5位数内,当然也不一定,反正要让用户好记.(看个人):②.尽量用顶级的域名 ...
- android 开源 + 一些素材网站
ui 设计工具:http://www.sketchcn.com/ 分类汇总: https://github.com/Trinea/android-open-project 直接拿来用!最火的Andro ...
- 比较好的自学IT的网站
其实这是我在知乎的一个回答,由于收藏人数众多,我想也许对有些初学者有用,故同步到Blog.此文章和知乎答案将不定期同步更新(知乎答案传送门). 入门与进阶: 学堂在线-最大的中文慕课(MOOC)平台学 ...
随机推荐
- C#/Sqlite-SQLite PetaPoco django 打造桌面程序
为什么是 SQLite? 在以前的程序中, 我通常会使用 MySQL. 如果使用你程序的用户是一个软件小白, 而且远在另一个城市, 那么让她安装和部署 MySQL 将是一场噩梦: 她需要配置服务, 面 ...
- 数据採集器服务——Socket(今天才发现AES加解密代码跟贴的时候不一样,貌似乱码,不知什么情况)
近期刚做的一个项目.关于 Socket TCP 通信. 需求方提供了一个 ARM 机器,及数据採集器,须要我做一个服务端与数据採集器进行交互. 目的: 数据採集器:定时将读取到的数据发送到服务端. 服 ...
- WORD中无损复制图片
问题 默认 Ctrl+C复制出来图片图片的严重模糊,复制出来的不是原图片!因为图片尺寸被修改后复制出来的则是模糊的 解决办法 解决办法把WORD中的图片恢复成默认的,如果对图片进行了缩放请把缩放比恢复 ...
- java中,静态代码块static的简单简介
直接上代码,更直观,包括一些解释: /** * 类初始化时,首先加载静态代码块, * 注意:所有静态代码块都会在方法之前执行,不管放置的位置:但是静态代码块按照顺序执行 * 再次执行调用的方法 */ ...
- ffmpeg对rtmp的基本操作[转]
ffplay和ffmpeg调用的库是一样的.我刚才试了一下,是可以播的.ffplay "rtmp://tsl.s1979.cutv.com:1935/cutvChannelLive/AxeF ...
- LR中判断HTTP返回状态
有天,有个人问:我在做b/s测试,请问如何保存从服务器传回来的http头的信息,怎么能得到http状态,和状态200进行比较? 后来,我给出的代码如下: Action() {int i; // [WC ...
- 利用socket.io+nodejs打造简单聊天室
代码地址如下:http://www.demodashi.com/demo/11579.html 界面展示: 首先展示demo的结果界面,只是简单消息的发送和接收,包括发送文字和发送图片. ws说明: ...
- iOS AVPlayer视频播放器
代码地址如下:http://www.demodashi.com/demo/11168.html 一.运行效果 二.实现过程 ①.创建播放器avPlayer //创建播放器 url = [url str ...
- 【WEB】jQuery获取页面回滚或跳转事件
1.效果: 2.Jquery: //记得引入jquery.min.js <script type="text/javascript"> $(function(){ wi ...
- php引用(&)变量引用,函数引用,对象引用和参数引用用法
php引用(&)变量引用,函数引用,对象引用和参数引用用法 php的引用(就是在变量或者函数.对象等前面加上&符号) 在PHP 中引用的意思是:不同的名字访问同一个变量内容.与C语 ...