如何调用api接口

程序员是公司里的技术岗位,是产品经理最亲密的伙伴。但是程序员可以理解产品经理的工作,产品经理却不一定理解程序员的工作,所以经常被无良程序员欺骗。从API接口这个维度,分析API的概念以及为什么要了解它,避免PM们在实际工作中对代码技术一无所知。

在日常工作中,产品经理负责推动项目进展。当他们与程序员对接时,问完成这个功能需要多少天,程序员给出了五天的回答。虽然你的预期时间只有三天,但是你除了相信他,按照承诺给他五天时间之外,也无能为力,最终导致项目的拖延。

你不知道这个函数有多少代码,程序员的工作量有多大。他利用你的无知故意拖延你的项目进度,你是最后一个背黑锅的。

程序员是公司里的终极技术岗位。他能理解我们的工作,但我们很难理解他们。为了防止PM在实际工作中受到无良程序员的伤害,本文从API接口这个维度分析了API的概念以及为什么要理解它,从而避免PM在实际工作中对代码技术的无知。

一、API的概念

API,官方定义为应用编程接口。它指的是一些预定义的接口,用来提供应用程序和开发人员基于某种软件或硬件可以访问的一组例程,而不必访问源代码或了解内部工作机制的细节。

二、为什么要理解API文档

既然API这么复杂,不属于PM的工作范围,为什么还需要我们费尽心思去理解呢?我们的目的是什么。

1.定义所需的接口服务。

API有很多种,最基础的就是产品最需要的,比如短信API、地图API、语音API等。如果我们的产品涉及到这个功能,就必须了解这个API,这样才能在需求设计阶段考虑的更全面。

2.掌握项目开发的工作量,合理安排计划。

说白了就是防止被程序员骗。当你走过去的时候,你发现程序员正在勤奋地工作。不好意思,人家是外包,就是欺负你看不懂代码。你生气了吗?但是,如果你知道接口的难度和工作量,并且明确他需要多长时间才能交给你,项目就不会被耽误,也更有利于项目进程的进度。

3.联合调试测试,识别项目风险点。

一些关键接口,那些数据量大,需要大数据压力测量的接口,必须通过连接测试,测量其更大流量,优化或设置限制,防止系统崩溃。

4.促进项目对接

如果PM懂一点技术,就不会开明显做不到的玩笑,但还是要程序员来做。从这个角度来说,也更有利于团队沟通,更有利于PM和程序员之间的和谐,避免矛盾,不至于打翻友谊之舟。了解API可以让PM对技术有更深刻的理解,更好的衡量开发工作量,制定功能内容。

三。举例说明API的重要性

优点:

开发者A开发了软件A,而开发者B正在开发软件B,A想利用B的一些成果或功能来辅助开发软件B,但不想完全输入软件A。我该怎么办?于是A把软件打包成一个函数,放在B的软件里。这个函数就是API。

如果没有API,B必须经历软件A的全过程,这需要花费大量的时间和精力,但如果是接口来访问一些功能,就简单方便了。想用就用,想拔就拔。

有一杯密封的果汁叫数据库;果汁上面有一根吸管,叫API。想喝杯子里的果汁,因为是密封的,只能靠吸管插入,不然就喝不到果汁了。

在这个故事里,你属于某个系统。要想获得果汁,必须通过一根吸管来实现,也就是一个接口,API,而这个API是数据库中唯一的API。这样,API就是一个提升项目功能和产品价值的辅助工具。

缺点:

由于API依赖于第三方软件,访问方在使用其他软件包的功能的同时,为自己插入了一个监视器,存在惠友友资源网数据泄露给第三方的危险。所以如果是公司的核心功能,更好使用内部API。

四。总结:万物皆有联系。

可能大家看了美国科幻大片,把程序员想象成了高智商的黑客。但现实是,大多数情况下,他们只负责修复bug,真正的源代码只是在网上复制粘贴而已。所以不要被他的外表所迷惑,PM的应该知道他的优优资源网的工作量,只需要在团队中给出明确的指令来管理项目的进度,大致了解程序员的工作内容,这样你就可以管理对接了。

最后,我想说,在产品行业,一切都是相通的,PM不必质疑自己的工作,也不必自卑。如果程序员是科学家,那么PM就是一个有友资源网的哲学家,只负责改造自然环境和人类社会的差异。其思维逻辑类似,程序员其实就是PM知识的技术流。

五、API的实际应用

请求示例:前往测试

Curl

PHP

PHPsdk

JAVA

C#

Python

import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStream;

import java.io.InputStreamReader;

import java.io.Reader;

import java.net.URL;

import java.nio.charset.Charset;

import org.json.JSONException;

import org.json.JSONObject;

import java.io.PrintWriter;

import java.net.URLConnection;

public class Example {

private static String readAll(Reader rd) throws IOException {

StringBuilder sb = new StringBuilder();

int cp;

while ((cp = rd.read()) != -1) {

sb.append((char) cp);

}

return  sb.toString();

}

public static JSONObject postRequestFromUrl(String url, String body) throws IOException, JSONException {

URL realUrl = new URL(url);

URLConnection conn = realUrl.openConnection();

conn.setDoOutput(true);

conn.setDoInput(true);

PrintWriter out = new PrintWriter(conn.getOutputStream());

out.print(body);

out.flush();

InputStream instream = conn.getInputStream();

try {

BufferedReader rd = new BufferedReader(new InputStreamReader(instream, Charset.forName("UTF-8")));

String jsonText = readAll(rd);

JSONObject json = new JSONObject(jsonText);

return json;

} finally {

instream.close();

}

}

public static JSONObject getRequestFromUrl(String url) throws IOException, JSONException {

URL realUrl = new URL(url);

URLConnection conn = realUrl.openConnection();

InputStream instream = conn.getInputStream();

try {

BufferedReader rd = new BufferedReader(new InputStreamReader(instream, Charset.forName("UTF-8")));

String jsonText = readAll(rd);

JSONObject json = new JSONObject(jsonText);

return json;

} finally {

instream.close();

}

}

public static void main(String[] args) throws IOException, JSONException {

// 请求示例 url 默认请求参数已经URL编码处理

String url = "https://api-gw.onebound.cn/taobao/item_get/?key=<您自己的apiKey>&secret=<您自己的apiSecret>&num_iid=652874751412&is_promotion=1";

JSONObject json = getRequestFromUrl(url);

System.out.println(json.toString());

}

}

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,843评论 6 502
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,538评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 163,187评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,264评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,289评论 6 390
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,231评论 1 299
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,116评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,945评论 0 275
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,367评论 1 313
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,581评论 2 333
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,754评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,458评论 5 344
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,068评论 3 327
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,692评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,842评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,797评论 2 369
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,654评论 2 354

推荐阅读更多精彩内容