WXTokenController.cs 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Threading.Tasks;
  5. using Microsoft.AspNetCore.Mvc;
  6. using Microsoft.Extensions.Options;
  7. using Senparc.Weixin.Entities;
  8. using Senparc.Weixin.MP;
  9. // For more information on enabling Web API for empty projects, visit https://go.microsoft.com/fwlink/?LinkID=397860
  10. namespace Winsoft.GOV.XF.WebApi.WXCore.Controllers
  11. {
  12. [Route("api/[controller]")]
  13. public class WXTokenController : BaseController
  14. {
  15. public WXTokenController(IOptions<SenparcWeixinSetting> senparcWeixinSetting) : base(senparcWeixinSetting)
  16. {
  17. }
  18. // GET: api/values
  19. [HttpGet]
  20. public ActionResult Get(string signature, string timestamp, string nonce, string echostr)
  21. {
  22. if (CheckSignature.Check(signature, timestamp, nonce, _senparcWeixinSetting.Token))
  23. {
  24. return Content(echostr); //返回随机字符串则表示验证通过
  25. }
  26. else
  27. {
  28. return Content("failed:" + signature + "," + CheckSignature.GetSignature(timestamp, nonce, _senparcWeixinSetting.Token) + "。如果您在浏览器中看到这条信息,表明此Url可以填入微信后台。" + _senparcWeixinSetting.Token);
  29. }
  30. }
  31. // GET api/values/5
  32. [HttpGet("{id}")]
  33. public string Get(int id)
  34. {
  35. return "value";
  36. }
  37. // POST api/values
  38. [HttpPost]
  39. public void Post([FromBody]string value)
  40. {
  41. }
  42. // PUT api/values/5
  43. [HttpPut("{id}")]
  44. public void Put(int id, [FromBody]string value)
  45. {
  46. }
  47. // DELETE api/values/5
  48. [HttpDelete("{id}")]
  49. public void Delete(int id)
  50. {
  51. }
  52. }
  53. }