.NET C# 怎么写API接口 从来没写过根本不知道从何下手

HYQSZ2017 2017-04-19 04:00:04
别人写得类不知道什么意思 ,自己又不明白API接口的具体意思,和操作方法 。只知道是就是通过某一预先定义的渠道读/写数据的方式,不会写,也不知道写了怎么用。希望有人指导一下我 ,该怎么理解,怎么去操作。大家能给我一个详细简介的文章,或实例讲解的文章么,
...全文
6137 28 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
28 条回复
切换为时间正序
请发表友善的回复…
发表回复
Yousee_ 2019-03-14
  • 打赏
  • 举报
回复
引用 楼主 HYQSZ2017 的回复:
别人写得类不知道什么意思 ,自己又不明白API接口的具体意思,和操作方法 。只知道是就是通过某一预先定义的渠道读/写数据的方式,不会写,也不知道写了怎么用。希望有人指导一下我 ,该怎么理解,怎么去操作。大家能给我一个详细简介的文章,或实例讲解的文章么,

web流程是客户端(浏览器)请求服务器(后端)
api流程是服务器(你的后端)请求服务器(别人的后端~)
女兆木木 2019-03-07
  • 打赏
  • 举报
回复
api是众多接口的一种,是一个被调用者。你要是想在别处拿数据,应该是去调用别人的接口,你只需写一个方法,后端模拟http请求,获取数据就好。其实只是获取方式不同,跟本地直接查数据库的总体流程相差无几。
  • 打赏
  • 举报
回复
你要从别人那里拿东西,你问他拿接口啊!他会给你个文档,你发请求去拿数据就可以额。


别人要从你这里拿东西,你写接口啊!WebApi,WebService,wcf 弄起来啊。
  • 打赏
  • 举报
回复
去别人的平台拿数据,别人提供的http接口就是webapi,如果是对方来调用你提供的http接口,你提供的就是webapi
东博东客 2019-03-06
  • 打赏
  • 举报
回复
我这几天正在做这个工作
长空X 2017-04-25
  • 打赏
  • 举报
回复
引用 20 楼 HYQSZ2017 的回复:
[quote=引用 18 楼 hjkl950217 的回复:] 发现你好像是不知道怎么用API接口,其实API接口就是调用别人的方法
对啊 我就是不会用 来求助各位大佬的[/quote]和你调用自己的方法一样的呀..就是你把参数传递过去 他返回给你数据..传递的方式可能是http 可能是其它 这个要看具体的了..不过总体来就就是传参数->处理->返回数据
HYQSZ2017 2017-04-22
  • 打赏
  • 举报
回复
引用 13 楼 ducker3590 的回复:
[quote=引用 7 楼 HYQSZ2017 的回复:] [quote=引用 3 楼 starfd 的回复:] 从别的平台拿,那就是正常的访问对方api,或者爬虫爬数据 公司平台给用户看,那就是平台操作,跟api没关系 不知道理解的对不对
就是它获取通途ERP平台订单数据是这样写的 我不清楚它到底叫什么 所以在网上搜讲解也不好搜
 private List<OrderInfos> GetAllOrder()
    {
        List<OrderInfos> lst = new List<OrderInfos>();
        FindOrderList find = new FindOrderList()
        {
            orderStatus = "WAIT_UPLOAD",
            since = System.DateTime.Now.AddDays(-1).ToString("yyyy-MM-ddTHH:MM:ssZ"),
            limit = 50,
        };
        ParameterObjec<FindOrderList> parameter = new ParameterObjec<FindOrderList>()
        {
            data = find
        };
        try
        {
            string p = Newtonsoft.Json.JsonConvert.SerializeObject(parameter),
                url = string.Format("http://{0}/process/resume/package/admin/getOrder", System.Configuration.ConfigurationManager.AppSettings["TongTuURL"]);
            string result = ExecutePost(url, p);
            if (string.IsNullOrWhiteSpace(result)!=true) //判断对象是否为空
            {
                ResponseData<OrderList> orderList = Newtonsoft.Json.JsonConvert.DeserializeObject<ResponseData<OrderList>>(result); //!空将值转化为JSON格式
                if (orderList != null && orderList.ack == "Success")
                {
                    lst = orderList.data[0].orderArray;
                }
            }
            return lst;
        }
        catch
        {
            return lst;
        }
    }
[/quote] 这个方法就是从对方提供的API接口取数据 然后返回一个集合 你应该不用再写什么接口了吧 按照你的描述 只要把这里面的数据展示在页面上就行了[/quote] 就是我现在取到数据 就是怎么把取到的数据通过动态表格绑定到页面显示啊 现在的数据我是用类调用的方法页面的后台取到了没有用异步 我想用循环把数据填充到表格里 怎么个写法了 能代码指导下吗

 public string GetTable()
    {
        string s = TT.OrderList("ss", null, "WAIT_UPLOAD", DateTime.Now.AddDays(-1).ToString("yyyy-MM-ddTHH:MM:ssZ"), 1, null);
        StringBuilder sb = new StringBuilder(s);
        return s;       
    }
HYQSZ2017 2017-04-20
  • 打赏
  • 举报
回复
引用 19 楼 hanjun0612 的回复:
具体的代码意思,就是 通过post请求订单信息 string result = ExecutePost(url, p); 上面这句话就是通过url地址和json参数来发送请求
可是我还是不知道怎么做 。。您知道有什么相关讲解文章可以推荐给我么
HYQSZ2017 2017-04-20
  • 打赏
  • 举报
回复
引用 18 楼 hjkl950217 的回复:
发现你好像是不知道怎么用API接口,其实API接口就是调用别人的方法
对啊 我就是不会用 来求助各位大佬的
正怒月神 版主 2017-04-20
  • 打赏
  • 举报
回复
具体的代码意思,就是 通过post请求订单信息 string result = ExecutePost(url, p); 上面这句话就是通过url地址和json参数来发送请求
长空X 2017-04-20
  • 打赏
  • 举报
回复
发现你好像是不知道怎么用API接口,其实API接口就是调用别人的方法
HYQSZ2017 2017-04-20
  • 打赏
  • 举报
回复
引用 9 楼 starfd 的回复:
你这个就是调用对方api接口获取数据…… 模拟http请求,看方法名称猜的
那您能告诉我代码的具体意思么,或者您知道有什么相关讲解文章可以推荐给我么
HYQSZ2017 2017-04-20
  • 打赏
  • 举报
回复
引用 15 楼 insus 的回复:
参考相关: http://www.cnblogs.com/insus/category/666119.html
就是您看了我上面的代码 您能告诉我我上面代码具体的意思是什么吗
insus 2017-04-20
  • 打赏
  • 举报
回复
HYQSZ2017 2017-04-19
  • 打赏
  • 举报
回复
引用 13 楼 ducker3590 的回复:
[quote=引用 7 楼 HYQSZ2017 的回复:] [quote=引用 3 楼 starfd 的回复:] 从别的平台拿,那就是正常的访问对方api,或者爬虫爬数据 公司平台给用户看,那就是平台操作,跟api没关系 不知道理解的对不对
就是它获取通途ERP平台订单数据是这样写的 我不清楚它到底叫什么 所以在网上搜讲解也不好搜
 private List<OrderInfos> GetAllOrder()
    {
        List<OrderInfos> lst = new List<OrderInfos>();
        FindOrderList find = new FindOrderList()
        {
            orderStatus = "WAIT_UPLOAD",
            since = System.DateTime.Now.AddDays(-1).ToString("yyyy-MM-ddTHH:MM:ssZ"),
            limit = 50,
        };
        ParameterObjec<FindOrderList> parameter = new ParameterObjec<FindOrderList>()
        {
            data = find
        };
        try
        {
            string p = Newtonsoft.Json.JsonConvert.SerializeObject(parameter),
                url = string.Format("http://{0}/process/resume/package/admin/getOrder", System.Configuration.ConfigurationManager.AppSettings["TongTuURL"]);
            string result = ExecutePost(url, p);
            if (string.IsNullOrWhiteSpace(result)!=true) //判断对象是否为空
            {
                ResponseData<OrderList> orderList = Newtonsoft.Json.JsonConvert.DeserializeObject<ResponseData<OrderList>>(result); //!空将值转化为JSON格式
                if (orderList != null && orderList.ack == "Success")
                {
                    lst = orderList.data[0].orderArray;
                }
            }
            return lst;
        }
        catch
        {
            return lst;
        }
    }
[/quote] 这个方法就是从对方提供的API接口取数据 然后返回一个集合 你应该不用再写什么接口了吧 按照你的描述 只要把这里面的数据展示在页面上就行了[/quote] 我先在要取这个平台别的数据只需将里面的数据列名和链接地址改一下就可以了是吧?
csdnFUCKINGSUCKS 2017-04-19
  • 打赏
  • 举报
回复
引用 7 楼 HYQSZ2017 的回复:
[quote=引用 3 楼 starfd 的回复:] 从别的平台拿,那就是正常的访问对方api,或者爬虫爬数据 公司平台给用户看,那就是平台操作,跟api没关系 不知道理解的对不对
就是它获取通途ERP平台订单数据是这样写的 我不清楚它到底叫什么 所以在网上搜讲解也不好搜
 private List<OrderInfos> GetAllOrder()
    {
        List<OrderInfos> lst = new List<OrderInfos>();
        FindOrderList find = new FindOrderList()
        {
            orderStatus = "WAIT_UPLOAD",
            since = System.DateTime.Now.AddDays(-1).ToString("yyyy-MM-ddTHH:MM:ssZ"),
            limit = 50,
        };
        ParameterObjec<FindOrderList> parameter = new ParameterObjec<FindOrderList>()
        {
            data = find
        };
        try
        {
            string p = Newtonsoft.Json.JsonConvert.SerializeObject(parameter),
                url = string.Format("http://{0}/process/resume/package/admin/getOrder", System.Configuration.ConfigurationManager.AppSettings["TongTuURL"]);
            string result = ExecutePost(url, p);
            if (string.IsNullOrWhiteSpace(result)!=true) //判断对象是否为空
            {
                ResponseData<OrderList> orderList = Newtonsoft.Json.JsonConvert.DeserializeObject<ResponseData<OrderList>>(result); //!空将值转化为JSON格式
                if (orderList != null && orderList.ack == "Success")
                {
                    lst = orderList.data[0].orderArray;
                }
            }
            return lst;
        }
        catch
        {
            return lst;
        }
    }
[/quote] 这个方法就是从对方提供的API接口取数据 然后返回一个集合 你应该不用再写什么接口了吧 按照你的描述 只要把这里面的数据展示在页面上就行了
HYQSZ2017 2017-04-19
  • 打赏
  • 举报
回复
引用 11 楼 qq_25095899 的回复:
ashx .
这和一般处理程序有什么关系了
大然然 2017-04-19
  • 打赏
  • 举报
回复
ashx .
HYQSZ2017 2017-04-19
  • 打赏
  • 举报
回复
引用 9 楼 starfd 的回复:
你这个就是调用对方api接口获取数据…… 模拟http请求,看方法名称猜的
好像是这样的可是 我不明白这个是怎么个运行方式 是怎样个原理 您能说一说么
  • 打赏
  • 举报
回复
你这个就是调用对方api接口获取数据…… 模拟http请求,看方法名称猜的
加载更多回复(8)

62,243

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧