using Microsoft.AspNetCore.Mvc;
using System.Web;
namespace ZR.Admin.WebApi.Controllers
{
///
/// 微信公众号
///
[Route("[controller]/[action]")]
[AllowAnonymous]
public class WxOpenController : BaseController
{
///
/// 获取签名
///
///
///
[Log(Title = "获取微信签名")]
[HttpGet]
public IActionResult GetSignature(string url = "")
{
url = HttpUtility.UrlDecode(url);
var appId = AppSettings.App(new string[] { "WxOpen", "AppID" });
var noncestr = Guid.NewGuid().ToString().Replace("-", "");
var timestamp = DateTimeHelper.GetUnixTimeSeconds(DateTime.Now);
var ticketResult = WxHelper.GetTicket();
if (appId.IsEmpty()) return ToResponse(ResultCode.CUSTOM_ERROR, "appId未配置");
if (ticketResult?.errcode != 0)
{
return ToResponse(ResultCode.CUSTOM_ERROR, "获取配置失败");
}
var signature = WxHelper.GetSignature(ticketResult.ticket, timestamp.ToString(), noncestr, url);
return SUCCESS(new { appId, signature, noncestr, timestamp, url });
}
}
}