npm 包 wxpay-server 使用教程

简介

wxpay-server 是一款 Node.js 的 npm 包,用于实现微信支付的服务器端功能。它提供了以下功能:

  • 微信支付 API 的封装,可用于创建订单、查询订单等功能;
  • 支付结果回调接口的处理,包括请求支付结果、验证签名等功能。

使用 wxpay-server 可以方便地实现微信支付功能,不需要编写繁琐的支付接口和支付结果处理代码。本文将详细介绍如何使用 wxpay-server 实现微信支付。

准备工作

使用 wxpay-server 前需要准备以下内容:

  1. 微信支付 API 的密钥(key)和商户号(mch_id),可在微信支付商户平台获取;
  2. Node.js 环境,在命令行窗口输入 node --version 确认已安装;
  3. IDE 或文本编辑器,本文以 Visual Studio Code 为例,可前往 https://code.visualstudio.com/ 下载。

安装 wxpay-server

安装了 Node.js 环境后,可以使用 npm 包管理工具安装 wxpay-server。在命令行窗口输入如下命令:

--- ------- ------------

安装完成后,即可在项目中引入并使用 wxpay-server。

创建订单

使用 wxpay-server 创建订单的步骤如下:

  1. 创建 wxpay 实例:
----- ----- - -------------------------
  ------- -------- ------- -- ---------- -----
  ------- ------ -- ----------
  ---- ---- ---- -- ------- --- --
  ----------- ------ -- -------------
---
  1. 调用 createOrder 方法创建订单:
----- ------ - ----- -------------------
  ----- ------- -- -------
  ------------- -------- -- --------
  ---------- -------- -- -------------
  ------- --- ------- -- ----- ------
---

createOrder 方法的返回值 result 包含以下属性:

  • prepay_id:预支付交易会话标识,用于后续调用支付 API;
  • timestamp:时间戳;
  • nonce_str:随机字符串。
  1. 使用 prepay_id 调用微信支付 API 完成支付。

查询订单

使用 wxpay-server 查询订单的步骤如下:

  1. 创建 wxpay 实例,同创建订单。

  2. 调用 queryOrder 方法查询订单:

----- ------ - ----- --------------------------

queryOrder 方法返回的 result 包含订单的详细信息,如下:

  • return_code:通信标识,表示通信状态;
  • result_code:业务结果标识,表示业务状态;
  • trade_state:交易状态;
  • transaction_id:微信支付订单号;
  • total_fee:订单总金额;
  • openid:用户 openid。

支付结果回调处理

使用 wxpay-server 处理支付结果回调的步骤如下:

  1. 创建 wxpay 实例,同创建订单。

  2. 在 notify_url 上监听 POST 请求:

----- ---- - ----------------
----- ------ - ----------------------- --------- --------- -- -
  ----- ---- - ----- --------------------- ----------

  ------------------
  -- --------
---
--------------------
  1. 在请求处理函数中处理支付结果回调,例如处理订单状态:
----- -------- ----------------------- -
  ----- - ------------- --------------- ----------- - - -----

  -- -- ------------ ------

  --------------- --------------- ------------ --------------------
-

以上是使用 wxpay-server 处理微信支付的基本流程,具体的使用方法可参考 API 文档。本文的示例代码可在 GitHub 上获取 https://github.com/example/wxpay-server-demo

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/600572c981e8991b448e8f5f


猜你喜欢

  • npm 包 redux-way 使用教程

    前言 在前端领域中,redux 是一款非常流行和强大的状态管理工具。而在使用 redux 过程中,redux-way 也是一个非常实用的 npm 包。redux-way 可以极大地简化 redux 的...

    3 年前
  • npm 包 gulp-peppermint 使用教程

    简介 gulp-peppermint 是一款基于 gulp 的插件,可以帮助快速生成网页版的自动化开发环境。它提供了一系列便利的工具,以便更好的进行前端开发。 安装 使用 npm 安装 gulp-pe...

    3 年前
  • npm 包 @dharapvj/ngx-signalr 使用教程

    前言 前端开发中,实时性很重要。SignalR 是一个强大的实时消息传输的库,它在 ASP.NET 开发中非常流行。而 @dharapvj/ngx-signalr 这个 npm 包则是 Angular...

    3 年前
  • npm 包 eks-loading 使用教程

    在前端开发中,我们时常需要展示加载状态,以告知用户正在执行某些操作。而 eks-loading 就是一款轻量的加载组件,可以帮助我们快速创建加载动画。 安装 在使用前,需要先安装 eks-loadin...

    3 年前
  • npm 包 eks-rate 使用教程

    在前端开发过程中,我们常常要处理与时间相关的任务。例如,在某些场景下,需要将当前时间与某个时间点或时间段进行比较,或者需要进行时间格式的转换等等。此时,npm 包 eks-rate 就可以帮助我们快速...

    3 年前
  • npm包 eks-upload 使用教程

    前言 在前端开发中,文件上传是常常需要用到的功能,但是在处理大中型文件上传时,如果直接使用传统的form表单的话,很容易收到文件大小、文件格式等限制,同时也容易出现跨域问题。

    3 年前
  • npm 包 htm-asset-combo 使用教程

    在前端开发中,优化页面性能是一个永恒的话题。其中,合并、压缩并异步加载 CSS、JavaScript、图片等静态资源,是常见的优化手段。今天我们要介绍的是 npm 包 htm-asset-combo,...

    3 年前
  • npm 包 node-red-contrib-google-iot-core 使用教程

    简介 Google IoT Core 是一个针对 IoT 应用场景的云端设备管理平台。node-red-contrib-google-iot-core 是一款专门用于 Node-RED 的扩展包,它提...

    3 年前
  • npm 包 wjx-react-native-aliyun-push 使用教程

    简介 wjx-react-native-aliyun-push 是一个基于 React Native 框架的 Aliyun 推送模块。使用此模块可以在 React Native 中轻松地集成 Aliy...

    3 年前
  • npm 包 mosel 使用教程

    在前端开发过程中,经常需要使用各种各样的 npm 包来辅助开发。其中,mosel 是一款可以帮助我们在前端中使用线性规划和混合整数规划的工具。本篇文章就来分享一下如何使用 mosel。

    3 年前
  • npm 包 Ember-Graph-Data 使用教程

    Ember-Graph-Data 是一个基于 Ember.js 的数据模型处理库,它提供了一种方便的方式来处理应用程序中的数据模型。在这篇文章中,我们将探讨 Ember-Graph-Data 的使用方...

    3 年前
  • npm 包 plantuml-encode 使用教程

    在前端开发中,我们常常需要使用各种工具来提高效率。在绘制流程图、时序图等方面,我们可以使用 plantUML 工具来进行快速绘制。而 npm 包 plantuml-encode 就是一个可以帮助我们将...

    3 年前
  • npm 包 wscalar 使用教程

    wscalar 是一款专为前端开发者设计的 NPM 包,可以帮助开发者轻松地进行数据格式转换和数据过滤,提高开发效率和数据处理能力。本文将介绍 wscalar 的安装和使用教程,帮助读者快速掌握该工具...

    3 年前
  • npm 包 em-fcmp-config 使用教程

    简介 在前端开发过程中,我们经常需要在不同的环境中运行应用程序,例如开发、测试和生产环境。在不同的环境中,我们需要配置不同的应用程序参数。em-fcmp-config 是一个可以通过命令行参数管理应用...

    3 年前
  • npm 包 express-pw 使用教程

    简介 express-pw 是一个基于 Node.js 平台的快速、开放、极简的 web 开发框架。它提供了一系列强大的工具,帮助开发者快速搭建 Web 应用程序。

    3 年前
  • npm 包 antd-mobile-cyq 使用教程

    前言 在前端开发中,我们常常需要使用一些 UI 库和组件库来帮助我们快速地搭建页面和实现功能。其中 antd-mobile-cyq 是一款基于 Ant Design Mobile 进行二次封装的 UI...

    3 年前
  • npm 包 bitfinex-api-node-john 使用教程

    前言 在前端开发中,经常会需要进行一些数据获取和处理的操作。而对于加密货币交易所的数据,我们可以使用 bitfinex-api-node-john 这个 npm 包来获取。

    3 年前
  • npm 包 brickyeditor 使用教程

    介绍 brickyeditor 是一款基于 React 编写的前端富文本编辑器。它具有简单易用、灵活性高等优点,可以帮助开发者快速实现富文本编辑功能。 安装 使用 npm 安装 brickyedito...

    3 年前
  • npm 包 ccprice 使用教程

    简介 ccprice 是一个 Node.js 模块,用于查询加密货币的实时价格。该模块支持超过 1,500 种加密货币的价格查询,并使用 CoinCap API 实时获取数据。

    3 年前
  • npm 包 ember-ckeditor5 使用教程

    前言 Ember.js 是一款针对 Web 应用程序开发的 JavaScript 框架,可以帮助开发者创建现代,高效的单页应用程序。而 CKEditor5 则是一款优秀的富文本编辑器,目前已经成为许多...

    3 年前

相关推荐

    暂无文章