Я пытаюсь сделать функцию, которая работает с WECHAT API,
Вот мой код:
Я использую код ниже для получения токена подключения
internal static string Token(string CorpID, string Secret)
{
CorpID = CorpID ?? "wwe1f80304633";
Secret = Secret ?? "Ev7_oVN7RqD9k4yUy5pzkfcZ_QhX9l0VjZnAQ";
string token;
using (var wc = new WebClient())
{
token = wc.DownloadString($"https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid={CorpID}&corpsecret={Secret}");
}
if (token.Contains("access_token"))
{
return token.Split(',')[2].Split(':')[1].Replace("\"", "");
}
return "";
}
Успешно получить действительный токен с WECHAT Server,
И приведенный ниже код: я хочу отправить запрос в WECHAT API и попросить WECHAT отправить сообщение выбранному сотруднику отдела.
internal static string SendMsg(string sendtext)
{
string ACTOKEN = "" + PDC.MSGTOKEN + "";
string CONTENT = "" + PDC.CONTENT + "";
string PostUrl;
using (var wc2 = new WebClient())
{
PostUrl = wc2.UploadString($"https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token={0}{1}", ACTOKEN, CONTENT);
}
return "";
}
public static void SendMsg2()
{
PDC.CONTENT = "Test Message";
string MsgContent = "{\"toparty\": \"" + PDC.DEPTID + "\",\"msgtype\": \"text\",\"agentid\": \"" + PDC.AGENTID + "\",\"text\": {\"content\": \"" + PDC.CONTENT + "\"},\"safe\":0}";
SendMsg(MsgContent);
MessageBox.Show("" + MsgContent + "");
}
И я добавил кнопку на мою WinForm и пытаюсь заставить ее работать
private void BtnSendMsg_Click(object sender, EventArgs e)
{
string token = MSG.Token(null, null);
if (!string.IsNullOrEmpty(token))
{
PDC.MSGTOKEN = token;
MessageBox.Show("" + PDC.MSGTOKEN + "");
}
else
{
MessageBox.Show(" Invalid Token ");
}
MSG.SendMsg2();
}
Однако, похоже, это не работает, и если я не ошибаюсь, проблема в этой части
internal static string SendMsg(string sendtext)
{
string ACTOKEN = "" + PDC.MSGTOKEN + "";
string CONTENT = "" + PDC.CONTENT + "";
string PostUrl;
using (var wc2 = new WebClient())
{
PostUrl = wc2.UploadString($"https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token={0}{1}", ACTOKEN, CONTENT);
}
return "";
}
Может кто-нибудь подсказать мне, как я могу решить эту проблему? Много, много, большое спасибо ~