Delphi XE7 用indy开发微信公众平台所有功能,可刷阅读,可刷赞,可加推广(除微支付)
http://www.cnblogs.com/devinlee/p/4565933.html
Delphi XE7 用indy开发微信公众平台所有功能,可刷阅读,可刷赞,可加推广(除微支付)
关注作者的微信公众平台,测试效果
包含微信公众平台的所有功能(除微支付)
示例代码:(如需要全部代码,请加作者微信:Leedege)
复制代码
function UpNews(Num: Integer; AccessToken: String): String;
var
J: TJSONObject;
N: array of TJSONObject;
Url: String;
temp: String;
i: Integer;
readnum, ad: TStringList;
begin
J := TJSONObject.Create;
readnum := TStringList.Create;
ad := TStringList.Create;
ad.LoadFromFile('ad.txt');
SetLength(N, Num);
try
J.AddPair('articles', TJSONArray.Create);
with J.GetValue('articles') as TJSONArray do
for i := 0 to Num - 1 do
begin
temp := TNewsMsg(NewsList.Items[i]^).Content;
if TNewsMsg(NewsList.Items[i]^).AddTop then
temp := TNewsMsg(NewsList.Items[i]^).adTop + temp;
readnum.LoadFromFile('readnum.txt');
if TNewsMsg(NewsList.Items[i]^).RefreshReadNum then
readnum.Text := StringReplace(readnum.Text, 'readNum',
TNewsMsg(NewsList.Items[i]^).readnum, [rfReplaceAll]);
if TNewsMsg(NewsList.Items[i]^).RefreshLikeNum then
readnum.Text := StringReplace(readnum.Text, 'likeNum">',
TNewsMsg(NewsList.Items[i]^).LikeNum, [rfReplaceAll]);
if TNewsMsg(NewsList.Items[i]^).SourceURL '' then
readnum.Text := StringReplace(readnum.Text, 'href=""',
Format('href="%s"', [TNewsMsg(NewsList.Items[i]^).SourceURL]),
[rfReplaceAll]);
temp := temp + readnum.Text;
readnum.Clear;
if TNewsMsg(NewsList.Items[i]^).AddBottom then
temp := temp + ad.Text + TNewsMsg(NewsList.Items[i]^).adBottom;
N[i] := TJSONObject.Create;
N[i].AddPair('thumb_media_id', UpMedia(AccessToken, 'image',
TNewsMsg(NewsList.Items[i]^).CoverFile));
N[i].AddPair('author', TNewsMsg(NewsList.Items[i]^).Author);
N[i].AddPair('title', TNewsMsg(NewsList.Items[i]^).Title);
N[i].AddPair('content_source_url', '');
N[i].AddPair('content', temp);
N[i].AddPair('digest', TNewsMsg(NewsList.Items[i]^).Digest);
N[i].AddPair('show_cover_pic', TNewsMsg(NewsList.Items[i]^)
.ShowCover.ToString);
Add(N[i]);
temp := '';
end;
Url := Format(UpNewsUrl, [AccessToken]);
temp := PostMethod(Url, UTF8Encode(J.ToString), 1);
J := TJSONObject.ParseJSONValue(temp) as TJSONObject;
if J.Count > 0 then
Result := J.GetValue('media_id').Value;
finally
J.Free;
readnum.Free;
ad.Free;
end;
end;
复制代码
作者微信:Leedege
Delphi XE7 用indy开发微信公众平台所有功能,可刷阅读,可刷赞,可加推广(除微支付)的更多相关文章
- Delphi XE7 用indy开发微信公众平台所有功能(10篇博客)
http://www.cnblogs.com/devinlee/p/4282498.html http://www.cnblogs.com/devinlee/p/4565933.html
- [c#]asp.net开发微信公众平台(1)数据库设计
开发微信公众平台之前,先去微信官方了解下大概的情况 这里:http://mp.weixin.qq.com/wiki/index.php :看了之后心里大致有数了,开始设计数据库,尽可能的考虑,未考虑到 ...
- [C#]asp.net开发微信公众平台----目录汇总-持续更新
1.[c#]asp.net微信公众平台开发(1)数据库设计 2.[c#]asp.net微信公众平台开发(2)多层架构框架搭建和入口实现 3.[c#]asp.net微信公众平台开发(3)微信消息封装及反 ...
- [c#]asp.net开发微信公众平台(8)微信9大高级接口,自定义菜单
前7篇把最基础的消息接收和回复全做完了, 也把高级接口的入口和分拆处理写好了空方法, 此篇接着介绍微信的9大高级接口, 并着重讲解其中的自定义菜单. 微信9大接口为: 1.语音识别接口 2.客服接 ...
- [c#]asp.net开发微信公众平台(7)前6篇的整体框架demo源码
这里给出的demo是具备整体框架的微信公众平台源码, 所谓demo就是拿过去就可以直接演示使用的东西, 当然不会具备非常详细的具体到业务层面.数据层面的东西, 每个人都可以在此基础上自由发挥, 只 ...
- [c#]asp.net开发微信公众平台(6)阶段总结、服务搭建、接入
经过前5篇,跟着一步步来的话,任何人都能搭建好一个能处理各种微信消息的框架了,总结一下最容易忽略的问题: 1.文本消息中可以使用换行符\n : 2.微信发来的消息中带的那个长整型的时间,我们完全 ...
- [c#]asp.net开发微信公众平台(5)微信图文消息
上篇已经成功响应了关注事件,也实现了文本消息的发送,这篇开始图文消息处理, 微信中最常用的消息类型就是图文消息了,因为它图文并茂,最能表达信息. 图文消息在微信中的接口定义如下: <xml> ...
- C#开发微信公众平台-就这么简单(附Demo)转载
C#开发微信公众平台-就这么简单(附Demo) 来源:https://www.cnblogs.com/xishuai/p/3625859.html#!comments 写在前面 阅读目录: 服务号和 ...
- 使用Java开发微信公众平台(二)——消息的接收与响应
上一篇文章(http://www.jerehedu.com/fenxiang/171807_for_detail.htm )中,我们学习了使用Java语言开发微信公众平台的第一部分——环境搭建与开发接 ...
随机推荐
- Python运维开发基础10-函数基础
一,函数的非固定参数 1.1 默认参数 在定义形参的时候,提前给形参赋一个固定的值. #代码演示: def test(x,y=2): #形参里有一个默认参数 print (x) print (y) t ...
- mysql中binlog_format的三种模式
mysql复制主要有三种方式:基于SQL语句的复制(statement-based replication, SBR),基于行的复制(row-based replication, RBR),混合模式复 ...
- java程序运行时间
方法一 long startTime = System.currentTimeMillis(); //获取开始时间 doSomething(); //测试的代码段 long endTime = Sys ...
- TensorFlow—多层感知器—MNIST手写数字识别
1 import tensorflow as tf import tensorflow.examples.tutorials.mnist.input_data as input_data import ...
- C++ define与const
C++中不但可以用define定义常量还可以用const定义常量,它们的区别如下: 用#define MAX 255定义的常量是没有类型的,所给出的是一个立即数,编译器只是把所定义的常量值与所定义的常 ...
- 关于block元素和inline元素
呃...这个会不会太基础了.最近在复习,所以基础知识也不能够忽略. 根据HTML 4.01 规范,其描述如下(http://www.w3.org/TR/html401/struct/global.ht ...
- BZOJ2424 [HAOI2010]订货 - 费用流
题解 (非常裸的费用流 题意有一点表明不清: 该月卖出的商品可以不用算进仓库里面. 然后套上费用流模板 代码 #include<cstring> #include<queue> ...
- zabbix分布式系统监视
http://blog.chinaunix.net/uid-25266990-id-3380929.html
- 2018.09.06 烽火传递(单调队列优化dp)
描述 烽火台是重要的军事防御设施,一般建在交通要道或险要处.一旦有军情发生,则白天用浓烟,晚上有火光传递军情. 在某两个城市之间有 n 座烽火台,每个烽火台发出信号都有一定的代价.为了使情报准确传递, ...
- 优秀前端工程师必备: cookie的增删改查Demo!
1 cookie可以很好地解决微信浏览器登录状态的保存,具体教程看下面链接: https://www.cnblogs.com/autoXingJY/p/10456767.html 2 参考了w3c等的 ...