赞
踩
沙箱内万物基于重定向
重定向,顾名思义,就是重新指定方向,也就是说沙箱能够做到让沙箱内软件操作的文件、注册表等路径重定向到其他位置(沙箱指定位置),这样软件本来想操作的资源就不会被访问或者操作,保证资源的安全性。
这也就是使用沙箱跑一些不明软件的原因,万一软件被恶意修改过,存在病毒,想破坏系统关键文件,也就不可能了。
重定向我们还有个高级的词叫做“虚拟化”
,也可以称作'隔离'
,说到底沙箱就是为程序提供一个虚拟化环境,也就是隔离环境,并保证程序所有操作都在这个隔离环境内。
支付宝开放平台官网:https://open.alipay.com/
1.搜索进入支付宝开放平台
2.登录,进入控制台
3.进入沙箱
【其中有用的几个信息:APPID、支付宝网关地址、应用公钥】
4.进入支付宝开发助手下载所需的工具(度娘搜索就有)
下载工具
安装完后打开工具---------在这里提前复制一下 “ 应用公钥 ”
5.然后打开沙箱应用按照顺序操作
6.进入文档中心下载demo
在应用沙箱页面中有许多产品列表
下载好后由于是eclipse文件所以不能直接在idea运行,首先先创建一个web项目然后将下列的文件复制到项目中去
【idea创建web项目:https://blog.csdn.net/m0_70083523/article/details/127396262?spm=1001.2014.3001.5502】
下载的文件是这样的:我们只需要复制文件到IDEA中就好【注意:idea中建立的web项目有一个index.jsp,先删除了避免复制跳过,下面文件也有index,jsp】
IDEA完整的项目目录如图:
7.进行项目的修改与配置
<!--沙箱支付-->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.alipay.sdk</groupId>
<artifactId>alipay-sdk-java</artifactId>
<version>3.4.49.ALL</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>5.3.22</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>4.5.9</version>
</dependency>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.1.3</version>
</dependency>
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.2</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
</dependency>
</dependencies>
注意这几个地方的内容要改:
1.应用ID就是你的支付宝ID-----沙箱应用里面的ID
2.商户私钥就是下载的那个软件生成的--
3.支付宝公钥是开发平台---"查看"处
4.剩下两个地方的地址修改【第三步】需要一项技术叫做
“内网穿透”,这个有文档教程【https://blog.csdn.net/m0_70083523/article/details/127202792】
5.支付宝网关【第四步】
要修改的地址
// 服务器异步通知页面路径 需http://格式的完整路径,不能加?id=123这类自定义参数,必须外网可以正常访问
public static String notify_url = "要修改的地址/notify_url.jsp";
// 页面跳转同步通知页面路径 需http://格式的完整路径,不能加?id=123这类自定义参数,必须外网可以正常访问
public static String return_url = "要修改的地址/return_url.jsp";
支付宝沙箱环境
里面找到 // 支付宝网关
public static String gatewayUrl = "https://openapi.alipaydev.com/gateway.do";
【以上操作和代码就完成了,整个任务就剩测试】
8.Tomcat服务器运行
▶第一次运行可能会出错,看下控制台可能会有utf-8或者别的字符的原因的话就是去修改一下编码【IDEA右下角】
9.进入环境
▶先将它换成GBK,运行,在换回utf-8,运行【不知原因】。等待服务器运行跳转进入沙箱环境
▶进入付款页面之后----登录
▶可以进入沙箱找到沙箱账号
▶【有商家也有买家,咱们登录买家就行,账号复制上去输入支付密码就行了,过会支付成功你刷新账号页面就能看到商家余额和买家余额都变了。】
▶ 1 . 代码环境出错------按照上面操作一般不会出错,就记得编码那个地方得改一下再改回来。
▶ 2 . 环境没问题,点击付款后没有登录页面,出现
报上述错误需要我们去找客服了,有文档说在…………下方评论自己的APPID,那个方法我用不了,那个界面就静态,响应不了(可能宝在维护吧)
所以我就直接问了客服【官方页面右下角】-----开始提问,发送用的支付宝的什么产品和报错,他会为你解答操作(很快的被回复了~~)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。