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包node-red-contrib-storfly-iot

    前言 Node-RED 是一款适用于可视化开发的工具,是一个基于流程的编程工具,它使用了一些常用的类似流程图的概念,为基础操作提供节点。而 node-red-contrib-storfly-iot 是...

    3 年前
  • npm 包 alternating-case 使用教程

    在前端开发中,我们经常需要操作字符串。比如,需要将字符串中的大写字母转换成小写字母,或者将小写字母转换成大写字母。为了方便开发者进行字符串的操作,有些工具类库提供了相应的方法。

    3 年前
  • npm 包 react-native-alipay-zmt 使用教程

    前言 随着移动支付的广泛使用,支付宝已成为人们日常生活中不可或缺的支付工具之一。在 React Native 开发中,如何接入支付宝支付并实现支付功能呢?本文将介绍一个常用的 npm 包 react-...

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

    简介 wechat-loading 是一款基于 CSS3 动画实现的微信小程序加载动画组件,它支持自定义颜色,大小,透明度等样式。使用该组件可以提高小程序的用户体验,为用户提供更好的加载体验。

    3 年前
  • npm 包 ra11y 使用教程

    在前端开发过程中,无障碍访问是一个很重要的话题。为了保证网站无障碍,需要我们使用一些工具来检查和修改,并且能够提供一些指导和建议。ra11y 是一个很好的 npm 包,可以帮助我们检查前端页面的无障碍...

    3 年前
  • npm包@open-learning/git4ol使用教程

    在当今的开发环境中,Git是一款强大且广泛使用的版本管理工具。为了简化Git操作并提高生产效率,开发人员从社区中推动了很多集成化的Git工具和技术。其中,npm包 @open-learning/git...

    3 年前
  • npm 包 `grid-lines` 使用教程

    什么是 grid-lines? grid-lines 是一个基于 CSS Grid 实现的网格系统库,可以帮助开发者更快速、更方便地实现网页布局。 快速上手 使用 grid-lines 很简单,只需按...

    3 年前
  • npm 包 heptapod 使用教程

    介绍 Heptapod 是一种颜色选择框架,用于在你的 Web 应用程序中的任何地方提供优雅的颜色选择器。该框架允许您自定义颜色选择器样式,并提供了许多有用的功能,例如选择自定义颜色范围、可调节颜色精...

    3 年前
  • npm包 Good-Mail 使用教程

    介绍 NPM(Node.js包管理器)是 Node.js 的包管理器,Good-Mail是一款基于 Node.js 的邮件发送模块。它可以用于在 Node.js 应用程序中快速方便地发送电子邮件。

    3 年前
  • npm 包 rn-autocomplete-text-input 使用教程

    随着移动应用的不断发展,前端开发变得越来越重要。而为了提高开发效率和代码可扩展性,我们需要使用各种工具和库来简化我们的工作。其中,npm 包是前端开发的一个重要工具。

    3 年前
  • npm 包 react-floating-label-paper-input 使用教程

    什么是 react-floating-label-paper-input? React-floating-label-paper-input 是一个 React 组件,它提供了一个浮动标签的文本输入元...

    3 年前
  • npm包react-native-diff-update使用教程

    React Native是一个非常强大的跨平台移动应用程序开发框架,它使用JavaScript作为开发语言。随着React Native的不断发展,越来越多的开发者和企业开始使用React Nativ...

    3 年前
  • npm 包 ts-http-server 使用教程

    在前端开发中,我们经常需要搭建一个本地的 HTTP 服务器,用于开发调试和文件预览等需求。而 ts-http-server 这个 npm 包则能够帮助我们快速地搭建一个基于 TypeScript 的 ...

    3 年前
  • npm 包 react-native-segmented-control-android 使用教程

    在 React Native 开发中,选择控件是必不可少的一部分。而其中,分段选择器在一些情况下是比较实用的,它可以帮助我们将一些较长的列表项分成几个小块。npm 包 react-native-seg...

    3 年前
  • npm 包 doggy-names 使用教程

    什么是 npm 包 doggy-names? npm 是目前世界上最大的软件包管理系统之一,几乎所有现代的 JavaScript 框架、库、工具都可以通过 npm 下载和安装。

    3 年前
  • npm 包 isitforme 使用教程

    isitforme 是一个可以帮助前端开发者快速了解当前使用的框架、库、语言在当前浏览器环境中的支持状况的 npm 包。使用这个包可以避免开发者的代码在不支持的环境中挂掉的情况,同时也可以提高开发效率...

    3 年前
  • npm 包 react-pure-component-optimized 使用教程

    React 是一个非常流行的前端框架,它的核心概念之一就是组件。组件可以帮助我们将 UI 拆分成独立,可复用的部分,提高代码的可维护性。在 React 中,组件分为两种:函数组件和类组件。

    3 年前
  • npm 包 newsround-logger 使用教程

    在前端开发中,日志是非常重要的工具。它可以帮助我们定位问题和追踪代码执行情况。而 npm 包 newsround-logger 是一个功能强大的日志包,可以方便地在前端项目中使用。

    3 年前
  • npm 包 simple-odata-server-mongodb 使用教程

    简介 simple-odata-server-mongodb 是一个 npm 包,用于在 Node.js 中使用 OData API 与 MongoDB 数据库进行交互。

    3 年前
  • npm 包 simple-odata-server-nedb 使用教程

    简介 simple-odata-server-nedb 是一个用来创建 RESTful API 的 npm 包,采用 Node.js 技术,支持 OData 协议。

    3 年前

相关推荐

    暂无文章