WPS加载项(wps jsapi)创建、发布及部署

安装wpsjs及其他具体细节参考WPS加载项官网地址https://open.wps.cn/previous/docs/client/wpsLoad

1,试验环境
node 20.12.1
npm 10.7.0
wpsjsrpcsdk.js,改动时间:2022-11-28 19:06, 大小80.2 KB (82,192 字节) 
wps,WPSPro_11.8.2.12195.exe
浏览器,chrome 84.0.4147.105(正式版本) (32 位)

在桌面新建一个目录wpsjsapitest,以管理员权限打开命令提示符,cd到目录wpsjsapitest

2,新建一个wps加载项t
在命令提示符中执行命令wpsjs create t

3,发布加载项
在命令提示符中执行命令wpsjs publish

发布地址设为
http://127.0.0.1:8081/t/

在线模式
选择多人使用(随意)

4,复制t\wps-addon-build下的内容到tomcatdir\webapps\t里,tomcat处于运行状态,本试验端口设为8081

5,复制t\wps-addon-publish\publish.html到tomcatdir\webapps\t里

6,在webapps\t里新建jsplugins.xml,内容如下

<jsplugins>
<jspluginonline name="t" type="wps" url="http://127.0.0.1:8081/t" />
</jsplugins>

7,在t里新建myServer3文件夹,里面包括index.html,wps.js, wpsjsrpcsdk.js(可以是安装wpsjs后的版本), 
可参考https://download.csdn.net/download/daqinzl/88041590

index.html里,设置jsPluginsXml的值,var jsPluginsXml = "http://127.0.0.1:8081/t/jsplugins.xml";
wps.js里,设置pluginName的值,var pluginName = "t";//加载项名称

8,访问http://127.0.0.1:8081/myServer3/,弹出允许访问加载项t的对话框,允许之。点页面上的按钮,可能启动不了wps或执行不了加载项t

9,访问http://127.0.0.1:8081/t/publish.html,安装t

10,安装加载项t之后,再访问http://127.0.0.1:8081/myServer3/,点击按钮,

11,如果仍然不能启动wps或执行不了加载项t,需要清空浏览器缓存,重新访问试试,

12,执行步骤11后,如果仍然不能正常运行wps加载项,卸载wps后再重装wps专业版,再试试试,会提示允许加载,然后访问publish.html, 安装加载项t,如此操作之后,应能正常运行加载项t了。

  • 5
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
下面是一个简单的Java Spring Boot微信支付示例,使用APIv2 JSAPI支付代码: 1. 创建微信支付配置类 ```java @Configuration public class WechatPayConfig { @Value("${wechat.pay.appId}") private String appId; @Value("${wechat.pay.mchId}") private String mchId; @Value("${wechat.pay.apiKey}") private String apiKey; @Bean public WXPay wxPay() throws Exception { WXPayConfigImpl config = WXPayConfigImpl.getInstance(); config.setAppID(appId); config.setMchID(mchId); config.setKey(apiKey.getBytes()); return new WXPay(config); } } ``` 2. 创建微信支付控制器 ```java @RestController @RequestMapping("/api/wechat/pay") public class WechatPayController { @Autowired private WXPay wxPay; @PostMapping("/unifiedorder") public ResponseEntity<?> unifiedOrder(@RequestBody WechatPayRequest request, HttpServletRequest httpRequest) { try { // 构造支付请求参数 Map<String, String> data = new HashMap<>(); data.put("body", request.getBody()); data.put("out_trade_no", request.getOutTradeNo()); data.put("total_fee", request.getTotalFee().toString()); data.put("spbill_create_ip", httpRequest.getRemoteAddr()); data.put("notify_url", "https://your-notify-url.com"); data.put("trade_type", "JSAPI"); data.put("openid", request.getOpenid()); // 调用统一下单API Map<String, String> result = wxPay.unifiedOrder(data); // 生成JSAPI支付参数 String prepayId = result.get("prepay_id"); Map<String, String> jsApiParams = new HashMap<>(); jsApiParams.put("appId", wxPay.getConfig().getAppID()); jsApiParams.put("timeStamp", String.valueOf(System.currentTimeMillis() / 1000)); jsApiParams.put("nonceStr", WXPayUtil.generateNonceStr()); jsApiParams.put("package", "prepay_id=" + prepayId); jsApiParams.put("signType", "MD5"); String paySign = WXPayUtil.generateSignature(jsApiParams, wxPay.getConfig().getKey()); jsApiParams.put("paySign", paySign); return ResponseEntity.ok(jsApiParams); } catch (Exception e) { return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body(e.getMessage()); } } } ``` 3. 创建微信支付请求类 ```java public class WechatPayRequest { private String body; private String outTradeNo; private BigDecimal totalFee; private String openid; // getters and setters } ``` 4. 在application.properties文件中添加微信支付配置 ```properties wechat.pay.appId=your-appId wechat.pay.mchId=your-mchId wechat.pay.apiKey=your-apiKey ``` 5. 使用Postman等工具测试JSAPI支付接口 发送POST请求到http://localhost:8080/api/wechat/pay/unifiedorder,请求体如下: ```json { "body": "测试支付", "outTradeNo": "20220101000001", "totalFee": 1, "openid": "your-openid" } ``` 其中,openid是JSAPI支付必须的参数,可以通过微信OAuth2.0授权获取。 返回结果如下: ```json { "appId": "your-appId", "timeStamp": "1641260647", "nonceStr": "9jvOvEJZzVw2STN5", "package": "prepay_id=wx01155047389241f9c9ab15d8d8e9813000", "signType": "MD5", "paySign": "B24F9D7F2DBE3048F7BA4D400C4B0B4B" } ``` 将返回结果中的数据传递给微信JSAPI支付接口即可完成支付。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值