spring mvc调用存储怎样存储 微信的access

关于微信支付的支付授权目录是如何定义的 - ITeye问答
最近在做微信支付v3版的开发,在测试时报access_control:not_allow.查了资料发现应该是支付授权目录不对的原因。这里请教下:我的页面是在WEB-INF目录下的,那么我的支付授权目录是否应该包括WEB-INF这一级?因为WEB-INF下的页面客户端是无法直接访问的,需要由后台跳解析转到。那么这里再衍生出一个问题,由于微信支付本身是JS方式的Ajax请求,因此它判断来路页面就是支付页面URL,而这个URL就应该是微信浏览器的URL,也就是说支付授权目录是根据微信浏览器的URL来判断的。再者我的项目是spring mvc架构的,浏览器上显示的url通常都是:http://***/weixinPay/pay 这种类型的,是不直接显示映射到的jsp页面的路径的。所以,我的问题是:对于spring mvc架构的项目而言,微信支付的授权目录应该怎样定义?授权目录的页面能够放在WEB-INF目录下?谢谢。再次觉得腾讯做的东西真是太坑了。
采纳的答案
url和你物理上文件放哪一点关系都没有。
url来了之后,你自己路由到相应的处理模块,该做什么做什么,把响应返回去就好了。
你看看iteye的url,难道上面对应的也是物理文件目录吗?显然不是的。
微信授权目录为项目下最少2层目录 例如 /online/adb/ 最少要到这一级别 我们刚和微信对接了
授权目录的页面应该要在腾讯配置的,看下微信api提供的文档吧
已解决问题
未解决问题&&原springmvc开发微信公众平台验证token接口教程及其java源代码分享今天研究了下微信公众平台的接入机制,给大家分享下相关的经验和代码。首先需要在微信公众平台的后台修改开发者中心的配置:如下图步骤2点击提交后会带验证参数请求你填写的URL,如下nginx会接受到类似请求:springmvc实现代码如下:WeixinController.java
package com.javaniu.www.
import java.io.IOE
import java.io.PrintW
import java.util.A
import javax.servlet.http.HttpServletR
import mons.codec.digest.DigestU
import org.springframework.stereotype.C
import org.springframework.web.bind.annotation.RequestM
import org.springframework.web.bind.annotation.RequestM
import org.springframework.web.bind.annotation.RequestP
import com.javaniu.core.constants.GlobalC
import com.javaniu.core.controller.BaseC
* *@author zuidaima
@Controller
@RequestMapping(&weixin&)
public class WeixinController extends BaseController {
@RequestMapping(value = { &signature& }, method = RequestMethod.GET)
public void signature(
@RequestParam(value = &signature&, required = true) String signature,
@RequestParam(value = &timestamp&, required = true) String timestamp,
@RequestParam(value = &nonce&, required = true) String nonce,
@RequestParam(value = &echostr&, required = true) String echostr,
HttpServletResponse response) throws IOException {
String[] values = { GlobalConstants.WEIXIN_TOKEN, timestamp, nonce };
Arrays.sort(values); // 字典序排序
String value = values[0] + values[1] + values[2];
String sign = DigestUtils.shaHex(value);
PrintWriter writer = response.getWriter();
if (signature.equals(sign)) {// 验证成功返回ehcostr
writer.print(echostr);
writer.print(&error&);
writer.flush();
writer.close();
}注意sha1加密算法用的是apache的commons codec,需要在maven中加入依赖:(其他springmvc的maven依赖请参考我分享过的其他项目)
&dependency&
&groupId&commons-codec&/groupId&
&artifactId&commons-codec&/artifactId&
&version&1.10&/version&
&/dependency&
或者通过搜索0个牛币请下载代码后再发表评论精精精精原精精原原精精最热搜索分享话题编程语言基础Web开发数据库开发客户端开发脚本工具游戏开发服务器软硬件开源组件类库相关分享精原精原原原原原精原最近下载最近浏览暂无贡献等级暂无贡献等级暂无贡献等级暂无贡献等级暂无贡献等级暂无贡献等级暂无贡献等级暂无贡献等级暂无贡献等级扫描二维码关注最代码为好友"/>扫描二维码关注最代码为好友}

我要回帖

更多关于 spring mvc 微信支付 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信