设置小程序业务域名(JAVA实现)

当我们在做微信小程序开发或者是公众号开发的时候,会涉及到代码上传和审核,发布的问题,当然微信会给我们一个后台,去进行小程序的上传和审核,发布,但是我们现在,想要这个后台在自己的后台管理中使用,这个时候就需要公众平台第三方平台,这里提供了一系列的接口给我们去运用,https://open.weixin.qq.com/cgi-bin/showdocument?action=dir_list&t=resource/res_list&verify=1&id=open1419318292&token=&lang=zh_CN
这里我们就说一下设置小程序业务域名接口的实现,使用JAVA去实现这个功能,首先我们来看微信提供的api文档
在这里插入图片描述
从这里我们可以看出这个接口他的crud都是一个接口中去实现的,其实这个功能我们可以分2个接口去实现,
1.当action为git的时候,我们不需要其他的参数,只是查询出所有的数据,这个接口是可以无限期的去调用
2.当action为add,delete,set时,这个接口一个月只能调用5次,所以这个是要把接口参数测试的非常好才去调用
所有这个是要注意的点,下面我们来用java实现这个接口的调用:
在调用接口的时候,要先获取接口凭证才能去调用业务域名的接口 : https://blog.csdn.net/qq_41971087/article/details/82559144 这里是获取接口凭证的实例

ServiceImpl代码:

	private final String API_MODIFY_DOMAIN = "https://api.weixin.qq.com/wxa/setwebviewdomain?access_token=TOKEN";
	
	
	@Resource
	WechatOpenService openService;
	
	/**
	 * 获取业务域名信息:
	 */
	@Override
	public WxaSetwebviewDomain getDomain(String appId) throws WxErrorException {
		//获取接口凭证
		String accesstoken = openService.getWxOpenComponentService().getAuthorizerAccessToken(appId, false);
		JsonObject jsonObject = new JsonObject();
		jsonObject.addProperty("action", "get");
		//发生post请求 accesstoken接口参数
		String responseContent = openService.post(API_MODIFY_DOMAIN.replace("TOKEN", accesstoken),
				jsonObject.toString()); //调用接口的参数
		return WxOpenGsonBuilder.create().fromJson(responseContent, WxaSetwebviewDomain.class);
	}

	/**
	 * 业务域名
	 */
	@Override
	public WxOpenBaseResult setwebviewDomain(String appId, String action, List<String> domains) throws WxErrorException {
		//获取接口凭证
		String accesstoken = openService.getWxOpenComponentService().getAuthorizerAccessToken(appId, false);
		JsonObject jsonObject = new JsonObject();
		jsonObject.addProperty("action", action);
		//参数 业务域名可能有多个
		JsonArray requestdomainArray = new JsonArray();
		for (String domain : domains) {
			requestdomainArray.add(domain);
		}
		jsonObject.add("webviewdomain", requestdomainArray);
		//发生post请求 accesstoken接口参数
		String responseContent = openService.post(API_MODIFY_DOMAIN.replace("TOKEN", accesstoken),
				jsonObject.toString()); //接口参数
		return WxOpenGsonBuilder.create().fromJson(responseContent, WxOpenBaseResult.class);
	}

contrller:


	/**
	 * 获取业务域名信息:
	 * @param appid
	 * @return
	 */
	@RequestMapping("/appSetwebviewDomain.do")
	@ResponseBody
	public JsonResult appSetwebviewDomain(String appid) {
		if(StringUtil.isBank(appid)) 
		 return JsonResult.renderError("appid不能为空");
		AuthorizerInfo authorizerInfo = authorizerinfoService.getById(appid);
		String miniProgramInfoStr = authorizerInfo.getMiniProgramInfo();
		JSONObject jsonData = JSONObject.parseObject(miniProgramInfoStr);
		System.err.println("用户唯一标识:"+appid);
		try {
			WxaSetwebviewDomain domain = iWxaSetwebviewDomainService.getDomain(appid);
			if(domain.getErrcode() == 0) {
				return JsonResult.renderSuccessWithData(domain);
			}else {
				return JsonResult.renderError("获取业务域名信息失败");
			}
		}catch(WxErrorException e) {
			e.printStackTrace();
		}
	return JsonResult.renderError("获取业务域名信息错误");
	}
	
	
	/**
	 * 业务域名
	 * @param appid
	 * @param requestUrls
	 * @return
	 */
	@RequestMapping("/setwebviewDomains.do")
	@ResponseBody
	public JsonResult SetwebviewDomains(String appid,String requestUrls) {
		System.err.println("微信用户唯一标识:"+appid+"添加的业务域名:"+requestUrls);
	if(StringUtil.isBank(appid))
		return JsonResult.renderError("appid不能为空");
		List<String> asList = Arrays.asList(requestUrls.split(","));
	try {
			WxOpenBaseResult domain = iWxaSetwebviewDomainService.setwebviewDomain(appid, "set", asList);
			if(domain.getErrcode()  == 0) {
				return JsonResult.renderSuccessWithData(domain);
			}else {
				return JsonResult.renderError("获取业务域名信息失败");
			}
		}catch(WxErrorException e) {
			e.printStackTrace();
			LOGGER.error("修改业务域名异常", e.toString());
		}

		
		return JsonResult.renderError("获取业务域名信息错误");
	}
	

当操作的时候,只需要填set就可以了,不需要去想add和delete的问题,set没有会添加,有会覆盖的
里面的工具类型其实也很简单,大家看下代码,提供参考就可以了,如果有问题请在下方评论

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
微信小程序是一种在微信平台上运行的轻量级应用程序,而Spring Boot是一个用于构建Java应用程序的开发框架。要将Spring Boot Java项目部署为微信小程序,需要进行以下步骤: 1. 构建Spring Boot项目:使用Spring Boot框架开发Java项目,并确保项目能够正常运行。 2. 小程序开发:在微信开发者工具中创建一个新的小程序,并按照要求进行配置。编写小程序的前端代码,包括界面设计和交互逻辑。 3. 后端接口开发:根据小程序的需求,编写后端接口来处理小程序的请求和响应。可以使用Spring Boot的注解来定义接口,并实现相应的业务逻辑。 4. 接口测试:使用工具如Postman测试后端接口,确保接口能够正确处理请求,并返回正确的响应。 5. 构建小程序:通过微信开发者工具将前端代码编译成可在微信平台上运行的小程序。 6. 部署项目:将Spring Boot项目部署到服务器上,可以使用各种云平台或自己搭建的服务器来运行项目。 7. 配置域名和SSL证书:为了能够在微信平台上访问到部署的项目,需要配置域名和SSL证书。可以使用各种域名服务商来购买域名,并使用云平台提供的SSL证书服务来获取证书。 8. 集成小程序和后端接口:在小程序前端代码中配置后端接口的地址,并通过代码调用后端接口来实现数据的获取和处理。 通过以上步骤,即可将Spring Boot Java项目部署为微信小程序,并能够在微信平台上运行和访问。需要注意的是,部署过程可能会因为环境和要求的不同而有所差异,具体操作细节可以根据实际情况进行调整和修改。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值