using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml;
using System.IO;
using System.Text;
using System.Collections.Generic;
using System.Net;
using System;
using System.IO;
using bll;
public partial class weixin : System.Web.UI.Page
{
const string Token = "weixin"; //你的token
string requestStr = "";
public string prefix = "test";
public string appid = "wxc2fc5ff569966962";
public string secret = "120a2acc942c7c432c704354e125d624";
public string openID = "oEMrxt9l1iWky5wkUy9qdX-0Q4aM";//吴工:"oEMrxt-LPmAVhzNzA8-wZTKokn_E";
protected void Page_Load(object sender, EventArgs e)
{
if (Request["prefix"] != null)
{
prefix = Request["prefix"].ToString();
}
if (Request["appid"] != null)
{
appid = Request["appid"].ToString();
}
if (Request["secret"] != null)
{
secret = Request["secret"].ToString();
}
if (Request["openID"] != null)
{
openID = Request["openID"].ToString();
}
//string i = GetPage("https://api.weixin.qq.com/cgi-bin/menu/create?access_token=" + GetToken(appid,screct) + "", getMenuInfo());
string postStr = "";
if (Request.HttpMethod.ToLower() == "post")
{
// WriteLog("-------------------开始-------------------------------");
Stream s = System.Web.HttpContext.Current.Request.InputStream;
byte[] b = new byte[s.Length];
s.Read(b, 0, (int)s.Length);
postStr = Encoding.UTF8.GetString(b);
if (!string.IsNullOrEmpty(postStr))
{
ResponseMsg(postStr);
}
// WriteLog("------------------------结束-----------------------------");
//WriteLog("postStr:" + postStr);
}
}
//获取人物的基本信息
public string ResponUrl(string url)
{
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.Method = "GET";
request.Accept = "application/json";
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
StreamReader reader = new StreamReader(response.GetResponseStream());
StringBuilder output = new StringBuilder();
output.Append(reader.ReadToEnd());
string req = output.ToString();
response.Close();
//"{\"subscribe\":1,\"openid\":\"oEMrxt-LPmAVhzNzA8-wZTKokn_E\",\"nickname\":\"维仔\",\"sex\":1,\"language\":\"zh_CN\",\"city\":\"厦门\",\"province\":\"福建\",\"country\":\"中国\",\"headimgurl\":\"http:\\/\\/wx.qlogo.cn\\/mmopen\\/m0HuzzXFMYNhtD9d9C0hTbO6vdasD8LWQ0QJ4aQNGgFSDdB8PcPBIib5UkCHNic2G4ibqibjWrskxlUU6uN9Tg5qJbvczsrjmKl2\\/0\",\"subscribe_time\":1396233163}"
CommonJsonModel jsoner = new CommonJsonModel(req);
string result = jsoner.GetValue("city");
return result;
}
public string GetPage(string posturl, string postData)
{
Stream outstream = null;
Stream instream = null;
StreamReader sr = null;
HttpWebResponse response = null;
HttpWebRequest request = null;
Encoding encoding = Encoding.UTF8;
byte[] data = encoding.GetBytes(postData);
// 准备请求...
try
{
// 设置参数
request = WebRequest.Create(posturl) as HttpWebRequest;
CookieContainer cookieContainer = new CookieContainer();
request.CookieContainer = cookieContainer;
request.AllowAutoRedirect = true;
request.Method = "POST";
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = data.Length;
outstream = request.GetRequestStream();
outstream.Write(data, 0, data.Length);
outstream.Close();
//发送请求并获取相应回应数据
response = request.GetResponse() as HttpWebResponse;
//直到request.GetResponse()程序才开始向目标网页发送Post请求
instream = response.GetResponseStream();
sr = new StreamReader(instream, encoding);
//返回结果网页(html)代码
string content = sr.ReadToEnd();
string err = string.Empty;
return content;
}
catch (Exception ex)
{
string err = ex.Message;
return string.Empty;
}
}
//获取token
public string GetToken(string appid, string screct)
{
HttpWebRequest request = (HttpWebRequest)WebRequest.Create("https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=" + appid + "&secret=" + screct + "");
request.Method = "GET";
request.Accept = "application/json";
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
StreamReader reader = new StreamReader(response.GetResponseStream());
StringBuilder output = new StringBuilder();
output.Append(reader.ReadToEnd());
string req = output.ToString();
//"{\"access_token\":\"xZuXVs7XVaDpGDqYcxb7QsdU5HBv9Fc3zENmxA4KupybaIEIv9v2FQ42F4QTVS8xJjOxgJxo4s7-ZvN_lkCZzCPbREGVGaQVyqcEh_8-RDbfiYDIr-ROD3XrXTz7Fv7Kbs6Pf-xTafyGfWvYsNUeGw\",\"expires_in\":7200}"
//string[] b = req.Split(new Char[] { ":" });
//string result = b[0].ToString();
response.Close();
CommonJsonModel jsoner = new CommonJsonModel(req);
string result = jsoner.GetValue("access_token");
return result;
}
//get 请求
public string GetWebRequest(string url)
{
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.Method = "GET";
request.Accept = "application/json";
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
StreamReader reader = new StreamReader(response.GetResponseStream());
StringBuilder output = new StringBuilder();
output.Append(reader.ReadToEnd());
string req = output.ToString();
//"{\"access_token\":\"xZuXVs7XVaDpGDqYcxb7QsdU5HBv9Fc3zENmxA4KupybaIEIv9v2FQ42F4QTVS8xJjOxgJxo4s7-ZvN_lkCZzCPbREGVGaQVyqcEh_8-RDbfiYDIr-ROD3XrXTz7Fv7Kbs6Pf-xTafyGfWvYsNUeGw\",\"expires_in\":7200}"
//string[] b = req.Split(new Char[] { ":" });
//string result = b[0].ToString();
response.Close();
return req;
}
//post 请求
private string PostWebRequest(string postUrl, string menuInfo)
{
string returnValue = string.Empty;
try
{
byte[] byteData = Encoding.UTF8.GetBytes(menuInfo);
Uri uri = new Uri(postUrl);
HttpWebRequest webReq = (HttpWebRequest)WebRequest.Create(uri);
webReq.Method = "POST";
webReq.ContentType = "application/x-www-form-urlencoded";
webReq.ContentLength = byteData.Length;
//定义Stream信息
Stream stream = webReq.GetRequestStream();
stream.Write(byteData, 0, byteData.Length);
stream.Close();
//获取返回信息
HttpWebResponse response = (HttpWebResponse)webReq.GetResponse();
StreamReader streamReader = new StreamReader(response.GetResponseStream(), Encoding.Default);
returnValue = streamReader.ReadToEnd();
//关闭信息
streamReader.Close();
response.Close();
stream.Close();
}
catch (Exception ex)
{
// lblResult.Text = ex.ToString();
}
return returnValue;
}
private string getMenuInfo()
{
string weixin1 = "";
weixin1 += "{\n";
weixin1 += "\"button\":[\n";
weixin1 += "{\n";
weixin1 += "\"type\":\"click\",\n";
weixin1 += "\"name\":\"会员卡\",\n";
weixin1 += "\"key\":\"V1001_TODAY_MUSIC123eee\"\n";
weixin1 += "},\n";
weixin1 += "{\n";
weixin1 += "\"type\":\"view\",\n";
weixin1 += "\"name\":\"产品\",\n";
weixin1 += "\"url\":\"http://223.4.32.64:21949/Manage/WebApp/productList.aspx\"\n";
weixin1 += "},\n";
weixin1 += "{\n";
weixin1 += "\"name\":\"菜单\",\n";
weixin1 += "\"sub_button\":[\n";
weixin1 += "{\n";
weixin1 += "\"type\":\"click\",\n";
weixin1 += "\"name\":\"hello word\",\n";
weixin1 += "\"key\":\"V1001_HELLO_WORLD123eee\"\n";
weixin1 += "},\n";
weixin1 += "{\n";
weixin1 += "\"type\":\"click\",\n";
weixin1 += "\"name\":\"赞一下我们\",\n";
weixin1 += "\"key\":\"V1001_GOOD123eee\"\n";
weixin1 += "}]\n";
weixin1 += "}]\n";
weixin1 += "}\n";
return weixin1;
// return "{\"button\":[{\"name\":\"测试\",\"sub_button\":[{\"type\":\"click\",\"name\":\"测试一一\",\"key\":\"V1001_HELLO_WORLD\"},{\"type\":\"click\",\"name\":\"测试一二\",\"key\":\"V1001_GOOD\"}]},{\"name\":\"测试二\",\"sub_button\":[{\"type\":\"click\",\"name\":\"测试二一\",\"key\":\"V1002_HELLO_WORLD\"},{\"type\":\"click\",\"name\":\"子菜单二二\",\"key\":\"V1002_GOOD\"}]},{\"name\":\"测试\",\"sub_button\":[{\"type\":\"click\",\"name\":\"子菜单三一\",\"key\":\"V1003_GOOD\"}]}]}";
// return "{\"button\":[{\"name\":\"K-World\", \"type\": \"view\", \"url\": \"http://www.baidu.com/\"}]}}";
}
/// <summary>
/// get
/// </summary>
public void GetUrl(string url)
{
string sURL;
sURL = "http://223.4.32.64:21912/cm.aspx";
WebRequest wrGETURL;
wrGETURL = WebRequest.Create(sURL);
WebProxy myProxy = new WebProxy("myproxy", 21912);
myProxy.BypassProxyOnLocal = true;
wrGETURL.Proxy = WebProxy.GetDefaultProxy();
Stream objStream;
objStream = wrGETURL.GetResponse().GetResponseStream();
StreamReader objReader = new StreamReader(objStream);
string sLine = "";
int i = 0;
while (sLine != null)
{
i++;
sLine = objReader.ReadLine();
if (sLine != null)
Console.WriteLine("{0}:{1}", i, sLine);
}
Console.ReadLine();
}
private void Valid()
{
string echoStr = Request.QueryString["echoStr"].ToString();
if (CheckSignature())
{
if (!string.IsNullOrEmpty(echoStr))
{
Response.Write(echoStr);
Response.End();
}
}
}
private bool CheckSignature()
{
string signature = Request.QueryString["signature"].ToString();
string timestamp = Request.QueryString["timestamp"].ToString();
string nonce = Request.QueryString["nonce"].ToString();
string[] ArrTmp = { Token, timestamp, nonce };
Array.Sort(ArrTmp); //字典排序
string tmpStr = string.Join("", ArrTmp);
tmpStr = FormsAuthentication.HashPasswordForStoringInConfigFile(tmpStr, "SHA1");
tmpStr = tmpStr.ToLower();
if (tmpStr == signature)
{
return true;
}
else
{
return false;
}
}
/// <summary>
/// 返回信息结果(微信信息返回)
/// </summary>
/// <param name="weixinXML"></param>
private void ResponseMsg(string weixinXML)
{
//回复消息的部分:你的代码写在这里
XmlDocument doc = new XmlDocument();
doc.LoadXml(weixinXML);
XmlNodeList list = doc.GetElementsByTagName("xml");
XmlNode xn = list[0];
string FromUserName = xn.SelectSingleNode("FromUserName").InnerText;
string ToUserName = xn.SelectSingleNode("ToUserName").InnerText;
string picurl = "http://223.4.32.64:21910/manage/webapp/imgs/lp/lp_index.png";
string url = "http://223.4.32.64:21910/manage/webapp/lp_index.aspx";
WriteLog("FromUserName:" + FromUserName + "-ToUserName:" + ToUserName);
string content = "";
if (xn.SelectSingleNode("Content") != null)
{
content = xn.SelectSingleNode("Content").InnerText;
}
获取基本信息
//string token = GetToken(appid, secret);
//string str1 = ResponUrl("https://api.weixin.qq.com/cgi-bin/user/info?access_token=" + token + "&openid=" + openID + "&lang=zh_CN");
客服接口
//string str2 = "{\"touser\":\""+openID+"\",\"msgtype\":\"text\",\"text\":{\"content\":\"Hello World, 我是林鹏 我在做测试!!\"}}";
//string resule = PostWebRequest("https://api.weixin.qq.com/cgi-bin/message/custom/send?access_token=" + GetToken(appid, secret), str2);
获取带参数的二维码(临时)
获取基本信息
//string token = GetToken(appid, secret);
//string postStr = "{\"expire_seconds\": 1800, \"action_name\": \"QR_SCENE\", \"action_info\": {\"scene\": {\"scene_id\": 123}}}";
获取的二维码ticket
//string ticketResult = PostWebRequest("https://api.weixin.qq.com/cgi-bin/qrcode/create?access_token=" + token, postStr);
//CommonJsonModel jsoner = new CommonJsonModel(ticketResult);
//string ticket = jsoner.GetValue("ticket");
//ticket = System.Web.HttpUtility.UrlEncode(ticket,System.Text.Encoding.UTF8);
提醒:TICKET记得进行UrlEncode 直接将https://mp.weixin.qq.com/cgi-bin/showqrcode?ticket=" + ticket放到浏览器就生成了二维码
string str3 = GetWebRequest("https://mp.weixin.qq.com/cgi-bin/showqrcode?ticket=" + ticket);
//获取带参数的二维码(永久)
//获取基本信息
string token = GetToken(appid, secret);
string postStr = "{\"action_name\": \"QR_LIMIT_SCENE\", \"action_info\": {\"scene\": {\"scene_id\": 66666}}}";//目前参数只支持1--100000 QR_SCENE为临时,QR_LIMIT_SCENE为永久
//获取的二维码ticket
string ticketResult = PostWebRequest("https://api.weixin.qq.com/cgi-bin/qrcode/create?access_token=" + token, postStr);
CommonJsonModel jsoner = new CommonJsonModel(ticketResult);
string ticket = jsoner.GetValue("ticket");
ticket = System.Web.HttpUtility.UrlEncode(ticket, System.Text.Encoding.UTF8);
//提醒:TICKET记得进行UrlEncode 直接将https://mp.weixin.qq.com/cgi-bin/showqrcode?ticket=" + ticket放到浏览器就生成了二维码
//string str3 = GetWebRequest("https://mp.weixin.qq.com/cgi-bin/showqrcode?ticket=" + ticket);
// requestStr = content.ToString();
string MsgType = xn.SelectSingleNode("MsgType").InnerText;
string str = "";//需要发送的内容
bool isShowImage = false;
// WriteLog("--微信消息:" + content);
// WriteLog("--消息类型:" + MsgType);
if (MsgType == "event")
{
string Event = xn.SelectSingleNode("Event").InnerText;
string key = xn.SelectSingleNode("EventKey").InnerText;
WriteLog("Event:" + Event);
if (Event == "subscribe")
{
content = "这是完全采用开发模式做处理的!相对比较费时间,难度也比较大;这样做的会员卡虽然可以永久保存,但是之后不能做退出!不能做卡的切换!";
str = "<xml><ToUserName><![CDATA[" + FromUserName + "]]></ToUserName><FromUserName><![CDATA[" + ToUserName + "]]></FromUserName><CreateTime>" + ConvertDateTimeInt(DateTime.Now).ToString() + "</CreateTime><MsgType><![CDATA[text]]></MsgType><Content><![CDATA[" + content + "]]></Content><FuncFlag>0</FuncFlag></xml>";
Response.Write(str);
}
else if (Event == "unsubscribe")
{
OperationData.GetSQL("DELETE FROM zz_Vip WHERE openID = " + FromUserName + "");
}
else if ("V1001_TODAY_MUSIC123eee".Equals(key))
{
string vipsURL = "http://weixin.xmzyzl.com/vipCard.aspx?openID=" + FromUserName + "&prefix=" + prefix;
str = " <xml>" +
"<ToUserName><![CDATA[" + FromUserName + "]]></ToUserName>" +
"<FromUserName><![CDATA[" + ToUserName + "]]></FromUserName>" +
"<CreateTime>" + ConvertDateTimeInt(DateTime.Now).ToString() + "</CreateTime>" +
"<MsgType><![CDATA[news]]></MsgType>" +
"<ArticleCount>1</ArticleCount>" +
"<Articles>" +
"<item>" +
"<Title><![CDATA[会员卡]]></Title> " +
"<Description><![CDATA[会员卡可以查看个人套餐信息哦]]></Description>" +
"<PicUrl><![CDATA[http://pic17.nipic.com/20111101/8468876_153653131000_2.jpg]]></PicUrl>" +
"<Url><![CDATA[" + vipsURL + "]]></Url>" +
"</item>" +
"</Articles>" +
"<FuncFlag>1</FuncFlag>" +
"</xml> ";
Response.Write(str);
}
else if ("V1001_HELLO_WORLD123eee".Equals(key))
{
content = "您点击了Hello World";
str = "<xml><ToUserName><![CDATA[" + FromUserName + "]]></ToUserName><FromUserName><![CDATA[" + ToUserName + "]]></FromUserName><CreateTime>" + ConvertDateTimeInt(DateTime.Now).ToString() + "</CreateTime><MsgType><![CDATA[text]]></MsgType><Content><![CDATA[" + content + "]]></Content><FuncFlag>0</FuncFlag></xml>";
Response.Write(str);
}
else if ("V1001_GOOD123eee".Equals(key))
{
content = "该功能还未开放!";
str = "<xml><ToUserName><![CDATA[" + FromUserName + "]]></ToUserName><FromUserName><![CDATA[" + ToUserName + "]]></FromUserName><CreateTime>" + ConvertDateTimeInt(DateTime.Now).ToString() + "</CreateTime><MsgType><![CDATA[text]]></MsgType><Content><![CDATA[" + content + "]]></Content><FuncFlag>0</FuncFlag></xml>";
Response.Write(str);
}
//产品
else if ("V1001_TODAY_SINGER123eee".Equals(key))
{
str = " <xml>" +
"<ToUserName><![CDATA[" + FromUserName + "]]></ToUserName>" +
"<FromUserName><![CDATA[" + ToUserName + "]]></FromUserName>" +
"<CreateTime>" + ConvertDateTimeInt(DateTime.Now).ToString() + "</CreateTime>" +
"<MsgType><![CDATA[news]]></MsgType>" +
"<ArticleCount>1</ArticleCount>" +
"<Articles>" +
"<item>" +
"<Title><![CDATA[产品信息]]></Title> " +
"<Description><![CDATA[众多商品一览无余]]></Description>" +
"<PicUrl><![CDATA[http://img.007swz.com/cpimg/qichesanlv/wDrvQ0gP5v_1263599363.jpg]]></PicUrl>" +
"<Url><![CDATA[http://223.4.32.64:21949/Manage/WebApp/productList.aspx]]></Url>" +
"</item>" +
"</Articles>" +
"<FuncFlag>1</FuncFlag>" +
"</xml> ";
Response.Write(str);
}
else
{
content = "收到了您的事件请求了";
str = "<xml><ToUserName><![CDATA[" + FromUserName + "]]></ToUserName><FromUserName><![CDATA[" + ToUserName + "]]></FromUserName><CreateTime>" + ConvertDateTimeInt(DateTime.Now).ToString() + "</CreateTime><MsgType><![CDATA[text]]></MsgType><Content><![CDATA[" + content + "]]></Content><FuncFlag>0</FuncFlag></xml>";
//响应XML
Response.Write(str);
}
}
else if (MsgType == "text")
{
if (content.Contains("?") || content.Contains("?") || content.Contains(":") || content.Contains("你是") || content.Equals(".") || content.Equals("。"))
{
isShowImage = true;
}
if (content.Contains("你好") || content.Contains("好") || content.Contains("hello") || content.Contains("哈哈") || content.Contains("呵呵") || content.Contains("haha"))
{
content = "你好...嘿嘿 /::D/::D/::D";
}
//功能查看
else if (content.Equals("0"))
{
content = "①:/::D打电话:call-(主叫号码)-(被叫号码) ; \r\n②:/::D给林鹏打电话:call-(你的电话号码); \r\n③:/::D 发短信:msgto-(接收方号码)-(信息内容) ; \r\n④:/::D问候短信:msg-(你的电话)-(你的名字);\r\n⑤:/::D给圆圆打电话只要输入:呼叫圆圆 \r\n⑥:/::D 查看通讯录:输入:通讯录 对应编号请输入:编号/::D 进行呼叫,输入:编号/::D/::D信息内容进行短信发送\r\n⑦:/::D 给别人打电话:call-对方号码 \r\n⑧:/::D 主页:http://aa540933120.host.yzdns.cn/index.aspx";
}
else if (content.Equals("呼叫圆圆"))
{
content = "正在呼叫圆圆...";
}
else if (content.Equals("呼叫阿鹏"))
{
content = "正在呼叫阿鹏...";
}
else if (content.Contains("发短信!") || content.Contains("短信回复") || content.Contains("短信"))
{
content = "发送格式:msg-电话号码-名字 查看效果!";
}
else if (content.Contains("QQ") || content.Contains("你是") || content.Contains("很高兴认识你") || content.Contains("叫什么"))
{
content = "我叫屎壳郎情调!QQ 540933120 /::D/::D/::D";
}
else if (content.Equals("林鹏"))
{
isShowImage = true;
}
else if (content.Contains("?") || content.Contains(".") || content.Contains("。。") || content.Contains("干嘛") || content.Contains("聊"))
{
content = "/::D/::D/::D没干嘛好无聊 打个电话过来聊聊 Tel:18750596080";
}
else if (content.Contains("哪里") || content.Contains("那") || content.Contains("哪"))
{
content = " /::D " + "软件学院男生1208";
}
else if (content.Contains("发短信!") || content.Contains("短信回复") || content.Contains("短信"))
{
content = "发送格式:msg-电话号码-名字 查看效果!";
}
else
{
content = "屎壳郎情调 还在成长!还不能理解你所说的话。请多支持.../::D/::D/::D";
}
//这行拼写错误 //str = " <xml><ToUserName><![CDATA[" + ToUserName + "]]></ToUserName><FromUserName><![CDATA[" + FromUserName + "]]></FromUserName><CreateTime>" + ConvertDateTimeInt(DateTime.Now).ToString() + "</CreateTime><MsgType><![CDATA[news]]></MsgType><ArticleCount>1</ArticleCount><Articles><item><Title><![CDATA[sad]]></Title><Description><![CDATA[description1]]></Description><PicUrl><![CDATA[" + picurl + "]]></PicUrl><Url><![CDATA[" + url + "]]></Url></item></Articles><FuncFlag>1</FuncFlag></xml>";
if (isShowImage)
{
//图片
// str = " <xml><ToUserName><![CDATA[" + ToUserName + "]]></ToUserName><FromUserName><![CDATA[" + FromUserName + " ]]></FromUserName><CreateTime>" + ConvertDateTimeInt(DateTime.Now).ToString() + "</CreateTime><MsgType><![CDATA[image]]></MsgType><PicUrl><![CDATA[" + picurl + "]]></PicUrl></xml>";
//响应XML
//新闻的代码
str = " <xml>" +
"<ToUserName><![CDATA[" + FromUserName + "]]></ToUserName>" +
"<FromUserName><![CDATA[" + ToUserName + "]]></FromUserName>" +
"<CreateTime>" + ConvertDateTimeInt(DateTime.Now).ToString() + "</CreateTime>" +
"<MsgType><![CDATA[news]]></MsgType>" +
"<ArticleCount>1</ArticleCount>" +
"<Articles>" +
"<item>" +
"<Title><![CDATA[屎壳郎情调]]></Title> " +
"<Description><![CDATA[简介:天天对着代码,身边都是屌丝,我也不确定我现在还喜不喜欢女生了\r\n角色:IT民工,屌丝...]]></Description>" +
"<PicUrl><![CDATA[" + picurl + "]]></PicUrl>" +
"<Url><![CDATA[" + url + "]]></Url>" +
"</item>" +
"</Articles>" +
"<FuncFlag>1</FuncFlag>" +
"</xml> ";
Response.Write(str);
isShowImage = false;
}
else
{
str = "<xml><ToUserName><![CDATA[" + FromUserName + "]]></ToUserName><FromUserName><![CDATA[" + ToUserName + "]]></FromUserName><CreateTime>" + ConvertDateTimeInt(DateTime.Now).ToString() + "</CreateTime><MsgType><![CDATA[text]]></MsgType><Content><![CDATA[" + content + "]]></Content><FuncFlag>0</FuncFlag></xml>";
//响应XML
Response.Write(str);
}
}
}
/// <summary>
/// unix时间转换为datetime
/// </summary>
/// <param name="timeStamp"></param>
/// <returns></returns>
private DateTime UnixTimeToTime(string timeStamp)
{
DateTime dtStart = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1));
long lTime = long.Parse(timeStamp + "0000000");
TimeSpan toNow = new TimeSpan(lTime);
return dtStart.Add(toNow);
}
/// <summary>
/// datetime转换为unixtime
/// </summary>
/// <param name="time"></param>
/// <returns></returns>
private int ConvertDateTimeInt(System.DateTime time)
{
System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1));
return (int)(time - startTime).TotalSeconds;
}
// <summary>
/// 写日志(用于跟踪)
/// </summary>
private void WriteLog(string strMemo)
{
StreamWriter sw = File.AppendText(Server.MapPath(".") + "\\log\\openID.txt");
sw.WriteLine(strMemo); //使用WriteLine写入内容
// sw.WriteLine(DateTime.Now.ToLocalTime().ToString());
sw.Flush(); //将缓冲区的内容写入文件
sw.Close(); //关闭sw对象
}
}
.NET微信开放平台-笔记
最新推荐文章于 2024-05-04 03:46:59 发布