資源簡介
1、采用c#語言,使用windows服務的方式定時獲取數據
2、通過釘釘API接口請求數據,并將數據接入數據庫
3、通過windows服務的方式定時請求數據接入數據庫
ps
1、數據庫的接入語句并沒有寫,需要自行修改接入數據庫的語句
2、接口字段請上釘釘上找到對應接口后與數據庫對應
3、不會windows服務的,請先自行學習windows服務
4、服務并沒有采用多線程,因為釘釘接口有請求次數限制,所以,沒有采用多線程,可以自行使用多線程優化程序

代碼片段和文件信息
using?DD.Common;
using?DD.Log;
using?DD.Model;
using?Newtonsoft.Json;
using?System;
using?System.Collections.Generic;
using?System.Data;
using?System.Linq;
using?System.Text;
using?System.Threading.Tasks;
namespace?DD.ApiRequest
{
????public?class?RequestDD
????{
????????private?string?token;
????????private?string?appkey;?//=?“dingghnsczxgy4bhexri“;
????????private?string?appsecret;?//=?“l_7nVNrdBSlNJNL7jdPyIqY_RALSRJXNCMYswj6vNHCAhrmex1JgnIUGWsRW2q9e“;
????????public?RequestDD(string?key?string?secret)
????????{
????????????appkey?=?key;
????????????appsecret?=?secret;
????????}
????????///?
????????///?獲取token
????????///?
????????public?void?GetToken()
????????{
????????????try
????????????{
????????????????string?url?=?“https://oapi.dingtalk.com/gettoken?appkey={0}&appsecret={1}“;
????????????????url?=?string.Format(url?appkey?appsecret);
????????????????string?json?=?HttpRequestHelper.HttpGet(url);
????????????????TokenModel?model?=?JsonConvert.Deserializeobject(json);
????????????????//請求成功
????????????????if?(model.errcode?==?0)
????????????????{
????????????????????token?=?model.access_token;
????????????????}
????????????????else
????????????????{
????????????????????LogHelper.WriteLog($“請求token出現錯誤\r\n錯誤說明:{model.errmsg}\r\n錯誤時間:{DateTime.Now.ToString(“yyyy-MM-dd?HH:mm:ss“)}“);
????????????????}
????????????}
????????????catch?(Exception?ex)
????????????{
????????????????LogHelper.WriteLog($“獲取token出現錯誤\r\n錯誤說明:{ex.Message}\r\n錯誤時間:{DateTime.Now.ToString(“yyyy-MM-dd?HH:mm:ss“)}“);
????????????}
????????}
????????#region?釘釘請求
????????///?
????????///?獲取所有部門
????????///?
????????///?
????????public?List?GetAllDept()
????????{
????????????try
????????????{
????????????????GetToken();
????????????????//地址,deptId=1默認獲取全部
????????????????string?url?=?“https://oapi.dingtalk.com/department/list?access_token=“?+?token?+?“&fetch_child=true“;
????????????????//請求接口
????????????????string?json?=?HttpRequestHelper.HttpGet(url);
????????????????//匿名解析返回對象
????????????????var?jsonModel?=?JsonConvert.Deserializeobject(json);
????????????????//判斷請求等于0時,說明請求成功,并正確返回結果
????????????????if?(jsonModel.errcode?==?0)
????????????????{
????????????????????List?depts?=?jsonModel.department;
????????????????????return?depts;
????????????????}
????????????????LogHelper.WriteLog($“請求部門失敗\r\n錯誤說明:{json}\r\n錯誤時間:{DateTime.Now.ToString(“yyyy-MM-dd?HH:mm:ss“)}“);
????????????????return?null;
????????????}
????????????catch?(Exception?ex)
????????????{
????????????????LogHelper.WriteLog($“獲取部門出現錯誤\r\n錯誤說明:{ex.Message}\r\n錯誤時間:{DateTime.Now.ToString(“yyyy-MM-dd?HH:mm:ss“)}“);
????????????????return?null;
????????????}
????????}
????????///?
????????///?獲取人員列表
????????///?
????????///?
????????private?L
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
????..A..H.????165376??2019-04-13?17:35??DD.Service\.vs\DD.Service\v15\.suo
?????文件??????????0??2019-04-13?09:53??DD.Service\.vs\DD.Service\v15\Server\sqlite3\db.lock
?????文件?????872448??2019-04-13?16:47??DD.Service\.vs\DD.Service\v15\Server\sqlite3\storage.ide
?????文件??????32768??2019-04-13?17:34??DD.Service\.vs\DD.Service\v15\Server\sqlite3\storage.ide-shm
?????文件????4140632??2019-04-13?17:33??DD.Service\.vs\DD.Service\v15\Server\sqlite3\storage.ide-wal
?????文件??????26624??2019-04-13?17:28??DD.Service\DD.ApiRequest\bin\Debug\DD.ApiRequest.dll
?????文件??????38400??2019-04-13?17:28??DD.Service\DD.ApiRequest\bin\Debug\DD.ApiRequest.pdb
?????文件??????24576??2019-04-13?14:09??DD.Service\DD.ApiRequest\bin\Debug\DD.Common.dll
?????文件??????69120??2019-04-13?14:09??DD.Service\DD.ApiRequest\bin\Debug\DD.Common.pdb
?????文件???????4608??2019-04-13?14:09??DD.Service\DD.ApiRequest\bin\Debug\DD.Log.dll
?????文件??????15872??2019-04-13?14:09??DD.Service\DD.ApiRequest\bin\Debug\DD.Log.pdb
?????文件???????6656??2019-04-13?16:52??DD.Service\DD.ApiRequest\bin\Debug\DD.Model.dll
?????文件??????34304??2019-04-13?16:52??DD.Service\DD.ApiRequest\bin\Debug\DD.Model.pdb
?????文件?????675240??2018-11-27?18:07??DD.Service\DD.ApiRequest\bin\Debug\Newtonsoft.Json.dll
?????文件?????250244??2018-11-27?17:59??DD.Service\DD.ApiRequest\bin\Debug\Newtonsoft.Json.pdb
?????文件?????699263??2018-11-27?17:59??DD.Service\DD.ApiRequest\bin\Debug\Newtonsoft.Json.xm
?????文件???????3100??2019-04-13?14:09??DD.Service\DD.ApiRequest\DD.ApiRequest.csproj
?????文件??????????0??2019-04-13?17:28??DD.Service\DD.ApiRequest\obj\Debug\DD.ApiRequest.csproj.CopyComplete
?????文件?????????42??2019-04-13?10:59??DD.Service\DD.ApiRequest\obj\Debug\DD.ApiRequest.csproj.CoreCompileInputs.cache
?????文件???????1307??2019-04-13?14:09??DD.Service\DD.ApiRequest\obj\Debug\DD.ApiRequest.csproj.FileListAbsolute.txt
?????文件??????45840??2019-04-13?16:52??DD.Service\DD.ApiRequest\obj\Debug\DD.ApiRequest.csprojAssemblyReference.cache
?????文件??????26624??2019-04-13?17:28??DD.Service\DD.ApiRequest\obj\Debug\DD.ApiRequest.dll
?????文件??????38400??2019-04-13?17:28??DD.Service\DD.ApiRequest\obj\Debug\DD.ApiRequest.pdb
?????文件???????7067??2019-04-13?10:59??DD.Service\DD.ApiRequest\obj\Debug\DesignTimeResolveAssemblyReferencesInput.cache
?????文件??????????0??2019-04-13?10:24??DD.Service\DD.ApiRequest\obj\Debug\TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs
?????文件??????????0??2019-04-13?10:24??DD.Service\DD.ApiRequest\obj\Debug\TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs
?????文件??????????0??2019-04-13?10:24??DD.Service\DD.ApiRequest\obj\Debug\TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs
?????文件????????143??2019-04-13?10:58??DD.Service\DD.ApiRequest\packages.config
?????文件???????1315??2019-04-13?10:24??DD.Service\DD.ApiRequest\Properties\AssemblyInfo.cs
?????文件??????36424??2019-04-13?17:30??DD.Service\DD.ApiRequest\RequestDD.cs
............此處省略243個文件信息
- 上一篇:WORD API操作大全
- 下一篇:TCP\\IP通信 C#
評論
共有 條評論