蘑菇街服务器信息,蘑菇街开放平台

一、授权方式

为保证用户数据的安全性,若您的应用已完成与蘑菇街开放平台对接,需要获取一些与用户紧密相关的信息(如订单、商品、促销等),需要征得用户的同意,获得用户的授权许可。蘑菇街开放平台采用国际通用的OAuth2.0标准协议,支持网站、桌面客户端、ERP系统(若要了解更多关于OAuth2.0的技术说明,请参考官方网站 http://oauth.net/2/ ) 。目前,蘑菇街开放平台的OAuth2.0支持以下方式获取Access Token。

方式

说明

Server-side flow

此流程要求ISV应用有Web Server应用,能够保存应用本身的密钥以及状态,可以通过http直接访问蘑菇街的授权服务器,可以通过RefreshToken刷新AccessToken保持授权有效。

Clinet-side Application

此流程适合客户端应用,同时应用无法与浏览器交互,但是可以外调用浏览器,需要每次都授权,无法通过RefreshToken刷新AccessToken。

Refreshing Access Token

用户如果在获取访问令牌时,同时获取到了刷新令牌,当访问令牌过期时,用户可以用刷新令牌刷新,从而延长访问令牌的时间,只有在Server-side flow才可以刷新。

二、名词解释

1. AppKey

开发者创建的应用标识,创建应用后在 控制台》应用列表 可以看到。

1. AppSecret

标识应用身份,在 控制台》应用列表 可以得到,获取Code、请求加签时必要参数。

2. Code

用户授权授权给应用换取AccessToken与RefreshToken的key,获取AccessToken必要参数,有效期为5分钟,或换取AccessToken后失效。

3. AccessToken

应用通过Code换取到最终颁发给应用的令牌,调用API必要参数,有效期为7天,同一个用户对应一个AppKey只会生效最后一次授权的AccessToken与RefreshToken。

3. RefreshToken

在有效期内可以刷新对应的AccessToken,授权后与AccessToken一起返回,用来减少用户授权频率,要求应用存储每个用户对同一个AppKey最近一次授权返回的RefreshToken,有效期为14天,或刷新后失效。

4. redirect_uri及callback定义规则

redirect_uri指的是应用发起请求时,所传的回调地址参数,在用户授权后应用会跳转至redirect_uri。

callback指的是应用注册时填写的回调地址链接 或者网站接入时所验证的域名地址。

规则:

(1)对于Server-side flow,redirect_uri是必选参数,并且要求redirect_uri与callback的顶级域名一致。

(2)在不可预知错误的情况下,返回到默认错误页面。

三、Server-side flow

此流程要求ISV或商家(自主研发应用)有web服务器,能够保持应用本身的密钥以及状态,可以通过http直接访问蘑菇街的授权服务器。

b78d1df610681850c57f49bc10a4b223.png

1.通过用户授权获取授权码Code(获取授权码链接)

通过拼接以下链接打开用户登录页面:https://oauth.mogujie.com/authorize?response_type=code&app_key=YOUR_APPKEY&redirect_uri=YOUR_REGISTERED_REDIRECT_URI&state=YOUR_CUSTOM_CODE

32e85eea88ae511a56ca1fbed51c3bce.png

请求方法:GET

请求参数:

参数

是否必选

参数说明

app_key

接入时申请的app_key

redirect_uri

回调地址,请确保回调地址在授权域下,并UrlEncode进行编码。

response_type

授权类型,此值固定为“code”。client_side flow 此值为token

state

用于第三方应用防止CSRF攻击,成功授权后回调时会原样带回。请务必严格按照流程检查用户与state参数状态的绑定。

返回说明:

如果用户成功登录并授权,则会跳转到指定的回调地址,并在redirect_uri地址后带上Authorization Code和原始的state值。

2.用上一步获取的Authorization Code,和AppSecret 通过Http POST方式换取Token。(获取访问令牌)

通过拼接以下链接(注意替换以下app_key、redirect_uri和state)打开用户登录页面:https://oauth.mogujie.com/token?code=YOUR_AUTHCODE&grant_type=authorization_code&app_key=YOUR_APPKEY&app_secret=YOUR_APPSECRET&redirect_uri=YOUR_REGISTERED_REDIRECT_URI

请求方法:GET

请求参数:

参数

是否必选

参数说明

app_key

接入时申请的app_key

app_secret

接入时申请的app_secret

redirect_uri

回调地址,与上一步的redirect_uri保持一致

grant_type

授权类型,申请accesstoken流程中,此值为“authorization_code”

code

上一步中获取的Authorization Code

state

用于第三方应用防止CSRF攻击,成功授权后回调时会原样带回。请务必严格按照流程检查用户与state参数状态的绑定。

返回说明:(如果成功返回,即可获取如下参数)

参数

描述

statusCode

授权操作状态(0000000 - 授权成功)

access_token

授权令牌(AccessToken)。

access_expires_in

该AccessToken的有效期,单位为秒。

refresh_token

授权刷新令牌(RefreshToken)。

refresh_expires_in

该RefreshToken的有效期,单位为秒。

四、Client-side flow

此流程适合ISV没有自己的web服务器,且应用为原生程序,即客户端应用(同时应用无法与浏览器交互,但是可以外调用浏览器)。

请求的流程:(1)用户发起授权请求, 开放平台验证后获取code并置换出AccessToken 》 (2)获取url中的AccessToken 》 (3)调用API

1. 通过拼接以下链接(注意替换以下app_key、redirect_uri和state)打开用户登录页面,登录后进行授权(页面操作与Server-side-flow相同):

https://oauth.mogujie.com/authorize?response_type=token&app_key=12304977&state=1212&redirect_uri=REDIRECT_URI

2. 直接从REDIRECT_URI中获取AccessToken信息。

最终返回的地址格式为:REDIRECT_URI/oauthCallBack/#access_token=6a42dbd2ef9cf3489a4913039838e12b

五、刷新Token

通过前两种流程,获取了Access token以及Refresh token(对于具有“获取Refresh token权限”的应用),但是一般来讲,AccessToken都有一定的时效性,在刷新有效时长内必须通过RefreshToken 来延迟Access token的时长。

请求的流程有:通过http post请求https://oauth.mogujie.com/token发送刷新。

请求参数:

参数

是否必选

参数说明

app_key

接入时申请的app_key

app_secret

接入时申请的app_secret

grant_type

授权类型,在刷新令牌的过程中,此值为“refresh_token”。

refresh_token

用来刷新AccessToken的刷新令牌

state

用于第三方应用防止CSRF攻击,成功授权后回调时会原样带回。请务必严格按照流程检查用户与state参数状态的绑定。

返回说明:(如果成功返回,即可获取如下参数)

参数

描述

statusCode

授权操作状态(0000000 - 授权成功)

access_token

新授权令牌(AccessToken)。

access_expires_in

新AccessToken的有效期,单位为秒。

refresh_token

新授权刷新令牌(RefreshToken)。

refresh_expires_in

新RefreshToken的有效期,单位为秒。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/352228.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

仿蘑菇街界面(2)

上一篇博客,博客地址http://blog.csdn.net/itbailei/article/details/38561297把基本的主界面框架已经搭建完毕,我们采用的基本框架为fragment进行页面之间的切换,底部菜单采用的是RadioButton。今天我们来重点来仿照一下第一个底部菜单“爱逛…

仿蘑菇街界面应用(1)

看到郭霖大神仿微信主界面的博客,在佩服大神文笔犀利、讲解详尽、代码风骚之余,也想在上班无所事事时,找点有意思的东西玩玩,蘑菇街作为中国最大女性购物社区,其APP的设计水平也毋庸置疑的,最近博客将连续来…

实现蘑菇街首页效果

打算出一个系列,专治现在市面上各种app的各种滑动不服系列,解决各种滑动冲突问题,现在已经发现了9种样式,打算一个一个一一破解,这是第一篇。 今天给大家带来的是高仿蘑菇街的首页,现在这种页面的格式很流…

设备指纹系列--基础篇

基础概念 618还没开始,但是又好像已经结束了…在这种电商大促的大节日前,电商行业客户一般会提前找到合适的设备指纹产品,去防止被“薅秃”。因为,黑灰产拥有专业的设备牧场,通过使用模拟器、刷机改机等手段&#xff…

仿蘑菇街个人主页

效果图: 看到效果图,第一想到的大致布局是一个scrollview嵌套一个viewpage,viewpage里面有一两个fragment或者写成一个fragment。但是fragment肯定包含两个布局,一个是含有图片(gridview)的listview,另一个布局是只含有…

App竞品分析报告:美丽说VS蘑菇街

1.产品概况 iOS App Store中国区iPhone免费-生活类排名(最近3个月) 数据来源:ann9.com 蘑菇街排名基本稳定在Top 10至20之间,美丽说在8月下旬后基本游离在Top 30外。 2015年6月活跃用户数比对-iOS端 数据说明:MAU为月…

社会化购物:Pinterest,Fancy还是美丽说,蘑菇街?

转自:网站分析在中国 原文地址:http://www.chinawebanalytics.cn/social-shopping-pinterest-or-fancy/ 【每期一句】越强烈的网络效应,越接近成功。 【前言】这篇文章是应 的邀请所做。很高兴能有机会与几年前一样,分析一个细分行…

仿蘑菇街项目

引言 仿蘑菇街的Vue.js项目是我学习vue.js做的第一个项目,今天来重温一下项目实现的功能,记录一下,方便以后查看。首先需要创建项目,本项目采用cli-3脚手架创建项目,采用默认安装模式,没有安装vue-router和…

高仿蘑菇街欢迎页

####蘑菇街欢迎页 ####高仿效果 这里这里…Demo下载地址 #####前言 本文将介绍如何对蘑菇街欢迎页效果进行分析,拆分,并一步步实现1个高仿版本,最重要的设计思路包括以下2点: 1.ViewPager切换时,通过offset偏移量动…

美丽说蘑菇街首页效果(UITableView和UIScrollerView联动)

作为一名菜鸟iOS开发程序员,第一次写文章,有点小激动!进入正题,最近项目中有个需求,类似美丽说蘑菇街首页效果,在网上找了一些资料后自己研究了下终于搞定了! 先看效果: 接下来详细…

【Linux】Nginx 优化与防盗链

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 Nginx 优化与防盗链 一、隐藏版本号方法一:修改配置文件方式方法二:修改源码文件,重新编译安装 二、修改用户与组三、缓存时间四、日志切割…

操作系统的最强入门科普(Unix/Linux篇)

今天这篇文章,我们来聊聊操作系统(Operating System)。 说到操作系统,大家都不会陌生。我们天天都在接触操作系统——用台式机或笔记本电脑,使用的是windows和macOS系统;用手机、平板电脑,则是a…

PDF文件无法编辑怎么办

PDF文件无法编辑是因为设置了编辑限制,只要在设置密码的地方输入密码把密码取消就可以自由编辑文件了。如果不知道密码或者忘记了密码,只能使用第三方的解密软件把密码解除掉,现在有很多PDF的辅助软件,可以在网上搜到很多&#xf…

SpringBoot实现服务器PDF文件的下载和预览功能

🍅程序员小王的博客:程序员小王的博客 🍅 欢迎点赞 👍 收藏 ⭐留言 📝 🍅 如有编辑错误联系作者,如果有比较好的文章欢迎分享给我,我会取其精华去其糟粕 🍅java自学的学习…

PDF文件不能编辑,有什么办法能够解决?

PDF文件打开之后发现不能编辑,很有可能是因为PDF文件设置了限制编辑。一般来说,想要解决问题,我们只需要将PDF编辑限制解除就可以了 但是大家有时候可能是不知道PDF密码的,那么在不知道PDF密码的情况下,如何解决不能编…

java利用itext编辑pdf

最近项目需要,在调研如何在pdf中增加标识字样,用来区分版本.最后确定用itext来实现 . itext的官网是:http://www.itextpdf.com/ 代码如下: Java代码 /** * authory kingviker * time : 2012-12-12 */ import java.io.FileOutputStream; import java.io.IOExcepti…

java设置pdf不可编辑_禁止编辑,但允许在Java iText / PDF中进行页面提取

我正在使用iText生成PDF文件 . 我想禁止编辑PDF,但允许读者提取页面 . 这是我设置加密的代码: writer.setEncryption(null, null, 0xffffffff, PdfWriter.STANDARD_ENCRYPTION_128); 第三个参数指定权限 . 我正在使用0xffffffff而不是单独的iText标志ALL…

HTML5 PDF 编辑,pdf.js的使用与改造

一、前期准备 1.1 需求描述 1.想让各个浏览器能显示服务器存放的PDF文件(主要是手机的浏览器) 2.想让项目结构如下:lib目录存放pdf.js等依赖文件,src存放要显示的pdf文件 想要的项目结构 3.这样我就可以将这个项目放到我网站的任何目录下,比如放到PDF或者别的文件夹下 PDF目…

如何免费编辑PDF文档?

我们都知道PDF文档不像Word文档一样可以直接编辑修改,想要编辑PDF文档,我们就需要借助专业的PDF编辑器。今天小编就给大家推荐一款可以免费编辑PDF文档的工具“金闪PDF编辑器”。 金闪PDF编辑器是一款功能齐全的强大的PDF工具,目前有移动端安…

PDF文件编辑并去除水印

我相信很多博友肯定被这个问题烦恼过,并且当初我自己也因为这个事情熬的掉了好几根头发,这件事就是PDF文件编辑过后会留下很严重的水印,并且无法除去,想去除就得花钱购买会员,想白嫖都没有办法,接下来我就为…