xe8以上版本使用

 

vHttp := TNetHTTPClient.Create(nil);

vList := TStringList.Create;
vS := TStringStream.Create;
try
Memo1.Lines.Add('----------------Post阻塞----------------');
vS.Clear;
with vHttp do

begin
ConnectionTimeout := 2000; // 2秒
ResponseTimeout := 10000; // 10秒
AcceptCharSet := 'utf-8';
AcceptEncoding := 'UTF-8';
AcceptLanguage := 'zh-CN';

Accept := 'application/json;';
ContentType := 'application/json; charset=utf-8;';
UserAgent := 'Embarcadero URI Client/1.0';

CustomHeaders['Authorization'] :=

'Basic ffffffffffffyfytftfghfhffffffffffffffffffffffffffffgfhgfhgf==';

try
ss := tstringstream.Create('', tencoding.UTF8);
ss.WriteString('{"mobile":"XXXXXXXX","temp_id":1}');
Post('https://api.sms.jpush.cn/v1/codes', ss, vS); // utf8进gbk出

Memo1.Lines.Add('post:' + vS.DataString);
except
on E: Exception do


Memo1.Lines.Add('post:' + E.Message);

end;

 

 

=============

INDY的方式 网上的推送消息的 这个没有试过:)

 HttpClient.HandleRedirects := True;
  HttpClient.Request.ContentType := 'application/json';
  HttpClient.Request.BasicAuthentication := True;
  HttpClient.Request.Authentication := TIdBasicAuthentication.Create;
  HttpClient.Request.Authentication.Username := 'appKey';
  HttpClient.Request.Authentication.Password := 'masterSecret';
  messageStr :='{"platform": "all","audience" : "all","notification" : {"alert" : "Hi, JPush for delphi!","android" : {},"ios" : {"extras" : { "newsid" : 321}}}}';
  jsonToSend := TStringStream.Create(messageStr, TEncoding.UTF8);
  jsonToSend.Position := 0;
  Memo1.Text := HttpClient.Post('https://api.jpush.cn/v3/push', jsonToSend);

 

 

【小主,觉得有用打赏点哦!多多少少没关系,一分也是对我的支持和鼓励。谢谢!】

posted on 2017-11-17 12:12  xgwzw  阅读(1748)  评论(0编辑  收藏  举报