java 后台 接入app微信支付


第一次微信支付接入,吐血,记录一下。
简单的支付,不涉及退款等更多操作

需要准备的参数:

  1. appid:商家平台ID。在微信的平台上有
  2. body:商品描述。
  3. mch_id:商户ID。在微信的平台上有
  4. nonce_str:随机字符串,UUID就好了。
  5. out_trade_no:商户订单号
  6. spbill_create_ip:终端IP。这个可以从请求头中拿到
  7. total_fee:支付金额。单位是分。
  8. trade_type:交易类型。这里我填JSAPI
  9. notify_url:通知地址。就是用户支付成功之后,微信访问你的哪个接口,跟你传递支付成功的相关信息。

pom.xml

首先导入微信支付sdk

<!--wxpay-sdk-->
<dependency>
	<groupId>com.github.wxpay</groupId>
	<artifactId>wxpay-sdk</artifactId>
	<version>0.0.3</version>
</dependency>

配置OurWxPayConfig

实现sdk的WXPayConfig ,主要配置appid,商户号,秘钥


import com.github.wxpay.sdk.WXPayConfig;
import org.springframework.context.annotation.Configuration;
import java.io.InputStream;

/** 配置我们自己的信息  */
@Configuration
public class OurWxPayConfig implements WXPayConfig {
   

    /** 设置我们自己的appid
     * 商户号
     * 秘钥
     * */

    @Override
    public String getAppID() {
   
        return "*****************";
    }

    @Override
    public String getMchID() {
   
        return "*********";
    }

    @Override
    public String getKey() {
   
        return "***********";
    }

    @Override
    public InputStream getCertStream() {
   
        return null;
    }

    @Override
    public int getHttpConnectTimeoutMs() {
   
        return 0;
    }

    @Override
    public int getHttpReadTimeoutMs() {
   
        return 0;
    }
}

Controller层

传入订单Id,数据以json串返回给app前端

 @RequestMapping("/wxpay"
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
您好!要在安卓应用中接入微信支付,您可以按照以下步骤进行操作: 1. 在微信开放平台上注册并创建一个应用,获取到对应的AppID和AppSecret。 2. 在安卓应用的项目中,添加微信支付的SDK文件,可以通过在项目的build.gradle文件中添加相应的依赖来引入。 3. 在安卓应用的manifest文件中,添加以下权限和activity声明: ```xml <uses-permission android:name="android.permission.INTERNET" /> <activity android:name="com.tencent.mm.opensdk.openapi.WXPayEntryActivity" android:exported="true" android:launchMode="singleTop" android:screenOrientation="portrait" android:theme="@android:style/Theme.Translucent.NoTitleBar" /> ``` 4. 在安卓应用的代码中,使用微信支付SDK提供的API进行支付操作。具体步骤如下: - 在您的支付页面或订单确认页面,用户点击支付按钮后,调用以下代码创建一个支付请求: ```java PayReq req = new PayReq(); req.appId = "您的AppID"; req.partnerId = "商户号"; req.prepayId = "预支付交易会话ID"; req.packageValue = "扩展字段(暂填写固定值:Sign=WXPay)"; req.nonceStr = "随机字符串"; req.timeStamp = "时间戳"; req.sign = "签名"; // 发送支付请求 IWXAPI api = WXAPIFactory.createWXAPI(context, req.appId); api.registerApp(req.appId); api.sendReq(req); ``` - 在安卓应用的代码中,实现一个WXPayEntryActivity来接收支付结果的回调。在该Activity的`onCreate`方法中,调用以下代码处理支付结果: ```java @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_wxpay_entry); // 处理支付结果 handlePayResult(getIntent()); } private void handlePayResult(Intent intent) { // 获取支付结果信息 PayResp resp = new PayResp(); resp.fromIntent(intent); // 根据支付结果进行相应处理 if (resp.errCode == BaseResp.ErrCode.ERR_OK) { // 支付成功 // TODO: 进行支付成功后的逻辑处理 } else { // 支付失败 // TODO: 进行支付失败后的逻辑处理 } finish(); } ``` 以上是接入微信支付的基本步骤,您需要根据具体的业务需求和微信支付提供的文档进行相应的配置和开发。希望对您有所帮助!如果还有其他问题,请随时提问。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值