using Aop.Api; using Aop.Api.Domain; using Aop.Api.Request; using Aop.Api.Response; using BizCom; using System; using System.Collections.Generic; using System.Collections.Specialized; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Web; namespace SiteCore { public class AlipayHelper { //private string APPID = "2017060507421835"; public static string APPID = "2017060507421835"; private static string APP_PRIVATE_KEY = "MIIEogIBAAKCAQEArjU7ZfePsHFsRzA8fd2RTeKIa9JPurmUYlJsLgeSRDWrPi5xsjxabwEefcZWq9Y4TvS0UInO/jWGHZNgfqw1wTKJFqjmiMTlzeNFP4YWJHXhxEweJhuOhdidMQVlb71LaOxC72G5yVPk5BJJb6p9gJ2pb/z5PcyePdhxlQoIeBZJxo1HxqMw4Nzw6Za9/NmFXoqoVj/4eIJ18ojn97eZpSd0Sgob4QCxYtQk6OrHNcPaHYR5kFhGWjEnrUzhxWPK7MKcp6+tRrOaBxFoTFoUXKD9FUXwuRZNSOaNpsWvx5kbRnSTEANuKflb05W8VYuHNAhmi91Wr5UtqX0IuB3HwQIDAQABAoIBADx+k7/W9fjJilY2M+tpU5n+Pm1ivPkUlKiIArUBQBObp3mSWz0PpD/D3bjDdTl6zFbutub40/6Gy6ndkbarSodqaxyJTnTUGxEiCNwEThAfN2UZIacODrIABKYPP6hLzbIDyUKjZwa4sVVZ3FKAm9Bb74jKCishsRm83cRplYNNd1N77GcRo9qpZy4Wja8PYmGBkTafkajIGL7Dt1LRXFgCMM8kG9M1p/wRzuuq8X3pomm3O/fX2CxNbjsgP3jSjeFRlRp+gXFDiqizb2o/bBy0Cppgo/C80jrjdrsWy3kCbR6D6qYjNBaPp0nIBcKJz0Se8R8+QFIRkbv0JZF+pyECgYEA2peWUdLV1B1w16ZKa8fS5Eau1f1Ux+mJo72bAKe/2TKOzhqsGGp/wkI9yMj1UC56on2X1UqO9Vs2dWn7jZlykyfniwKm3Md0CrU6phTj5JSgJ6kBZKY6l1uPF5Bmi2YriNwqrE09ruEe4PjxZR/nThLkRthVHRa8pUgwaY9taw0CgYEAzAUx82BgA4MWaDwxH8WbGNw9nE5WBwvnXkod6ZQgtO+b/fplyW1DUoCQehM0SaQmI8/H3JgsteVhqWpHMrprTehz9S8yTPqRp4Y8FiLd8QL3ut79z6nUubuDUDe9q67pLBXpPRsfQzaLFm5kLsZrFNvHWMDKTif/yxF6rf0nUoUCgYBFXOy6MijgEieIhp/+632kKjm4dZa9iQHAD55r6s8Z4M0n4ZbSeJjpz5NDb2FIfDc18JyJdgs/GB6Dy4mjORn+UB9NIR5J2JCeBTwDD4XxNqhLbXmfso/ND6SsWYnwmg8ecp6n5iq4n37o7JXM/P6s65m8UVFQ1bIu0GVsWbLi0QKBgDA0pgnIYsdRqPC2EDFeonfsSg5tn/wIPwHTZ1/yZQv7dZM8H+LJE1giEoEVmowv4eciSCoCNsY/zaSW/P2qeIIvA38SSMNRjSrVF8tvL5urxNb9q2Du0tmTycIheYpgSK3m+3Y5u1hJQfHp4Xf/3/tMtrxsySBQaSsVFTSZFTp1AoGAI/9SCDZvyG2669Lc1+oCGzB0UYGf2jOSB0xz+u7/VsxmbERRX/loKfcnUJd1RWzDhjhUeIT3ajBM+609MCG56zBN+xOPkPckwsa1h37WtTXWpAIeHxAoP6GAh8kw1IqfrCzDJNBbTs/v4dxTwIi6nduEv0dMpI6p/ZmLAmxGh+Q="; private static string APP_PUBLIC_KEY = "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArjU7ZfePsHFsRzA8fd2RTeKIa9JPurmUYlJsLgeSRDWrPi5xsjxabwEefcZWq9Y4TvS0UInO/jWGHZNgfqw1wTKJFqjmiMTlzeNFP4YWJHXhxEweJhuOhdidMQVlb71LaOxC72G5yVPk5BJJb6p9gJ2pb/z5PcyePdhxlQoIeBZJxo1HxqMw4Nzw6Za9/NmFXoqoVj/4eIJ18ojn97eZpSd0Sgob4QCxYtQk6OrHNcPaHYR5kFhGWjEnrUzhxWPK7MKcp6+tRrOaBxFoTFoUXKD9FUXwuRZNSOaNpsWvx5kbRnSTEANuKflb05W8VYuHNAhmi91Wr5UtqX0IuB3HwQIDAQAB"; public static string ALIPAY_SELL_ID = "2088721190992112"; public static string ALIPAY_SELL_EMAIL = "2826755149@qq.com"; public static string ALIPAY_PUBLIC_KEY = "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAg8iVnQ6vqmVxV7AWgzptzn+5xGMQMbAcaLUgc4rGVa+bLaLDrdcgrKL+hXp//nP0gNS5YgrIkLVXban/Dtrsj8mejAZeFDSNEe4bQRMb15onPB1k/Tx2oUkgf+oaR+cuZhsesU2hzZ3Yd7fZh6I76qijV6qbvRagje9sVXBt9PS/hSS+Eox0mfR9aKWBYKhU7AFz6OgYgHvhKUhVuNYsbIMJDo1iLdzIw9sn7b3E0K/2MdGwY4uwfi+oxIWiy3SSwh7Jwen5iNGrl5QRGy9j8BYNyJ327d8mFuJO3YEQnbCObOqVwiHXCDLFIid7uYip9RkTuGpyyY3u6Tbu1mzYawIDAQAB"; //public static string ALIPAY_PUBLIC_KEY = "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAg8iVnQ6vqmVxV7AWgzptzn+5xGMQMbAcaLUgc4rGVa+bLaLDrdcgrKL+hXp//nP0gNS5YgrIkLVXban/Dtrsj8mejAZeFDSNEe4bQRMb15onPB1k/Tx2oUkgf+oaR+cuZhsesU2hzZ3Yd7fZh6I76qijV6qbvRagje9sVXBt9PS/hSS+Eox0mfR9aKWBYKhU7AFz6OgYgHvhKUhVuNYsbIMJDo1iLdzIw9sn7b3E0K/2MdGwY4uwfi+oxIWiy3SSwh7Jwen5iNGrl5QRGy9j8BYNyJ327d8mFuJO3YEQnbCObOqVwiHXCDLFIid7uYip9RkTuGpyyY3u6Tbu1mzYawIDAQAB"; public static string CHARSET = "utf-8"; public static string GetSign(string subject,string amount,string tradeno) { IAopClient client = new DefaultAopClient("https://openapi.alipay.com/gateway.do", APPID, APP_PRIVATE_KEY, "json", "1.0", "RSA2", ALIPAY_PUBLIC_KEY, CHARSET, false); //实例化具体API对应的request类,类名称和接口名称对应,当前调用接口名称如:alipay.trade.app.pay AlipayTradeAppPayRequest request = new AlipayTradeAppPayRequest(); //SDK已经封装掉了公共参数,这里只需要传入业务参数。以下方法为sdk的model入参方式(model和biz_content同时存在的情况下取biz_content)。 request.SetNotifyUrl("http://www.ifireant.com/alipayreturn"); AlipayTradeAppPayModel model = new AlipayTradeAppPayModel(); model.Body = subject; model.Subject = subject; model.TotalAmount = amount; model.ProductCode = "QUICK_MSECURITY_PAY"; model.OutTradeNo = tradeno;// getOutTradeNo(); model.TimeoutExpress = "30m"; request.SetBizModel(model); //这里和普通的接口调用不同,使用的是sdkExecute AlipayTradeAppPayResponse response = client.SdkExecute(request); //HttpUtility.HtmlEncode是为了输出到页面时防止被浏览器将关键参数html转义,实际打印到日志以及http传输不会有这个问题 //XLog.SaveLog(0, response.Body); return response.Body; //Response.Write(HttpUtility.HtmlEncode(response.Body)); //页面输出的response.Body就是orderString 可以直接给客户端请求,无需再做处理。 } } }