erlang HTTP 客户端 使用实例

HTTPC的请求范式

HTTPC(Method(),Request(),Httoptions().Options()) 其中

Method=head|get|put|psot|trace|options|delete (一般主要用 get ,post ,put ,delete)

Request= {url(),headers()}|{url(),headers(),content_type(),body()}

前者用于 get ,后者一般用于post ,put ,而delet 方法取决于你URL的设计

Url () 就是 请求的地址 不过注意,必须加上http 的前缀啊  就像http://myapp.com:8080 ,使用myapp.com:8080 会报错

headers={filed(),Value()} 是 HTTP请求头的属性键值表,例子:[{"content-length","216"}] 注意 键和值都是字符串啊

content-type= strings() 就是传输内容的类型 例子 “application/json" 说明传递的是字符串

body() =strings() 不要解释了,就是Http的内容了

简单测试

application:start(inets).httpc:set_options([{cookies,enabled}]).httpc:request("http://www.omdbapi.com/?i=tt3896198&apikey=yourkey").

设置请求头 Authorization

application:start(inets).Url="http://www.summergao.com:90/api/blog_musics?_sortField=music_id&_sortDir=RANDOM".{ok,Result} = httpc:request(get, {Url, [{"Authorization","Basic U3VtbWVyR2FvOlN1bW1lcjdhbe=="}]}, [], []).

向www.myapp.com 提交一个JSON 。JOSN是个键-值对象 user="mike",password= "1234"

application:start(inets).Msg=rf4627:encode({obj,[{user,"mike",password,"1234"}]}).{ok,Result}=httpc:request(post,{"http://myapp.com:8080",[],applcation/json,Msg},[],[]).

注意:在使用JOSN 库( https://github.com/tonyg/erlang-rfc4627 )之前,先要使用code:add_path("你的JOSN库的beam 文件路径") 把这个库载入进来

申请OMDB Api Key: http://www.omdbapi.com/apikey.aspx

详情请参考: http://erlang.org/doc/man/httpc.html#request-2

erlang httpc相关推荐

  1. erlang使用httpc:request报错nxdomain

    2019独角兽企业重金招聘Python工程师标准>>> 今天遇到httpc:request()方法报错: 调用方法: $ erl 1>inets:start(). 2>U ...

  2. erlang-百度云推送Android服务端功能实现-erlang

    百度云推送官方地址http://developer.baidu.com/wiki/index.php?title=docs/cplat/push 简单的介绍下原理: 百度云推送支持IOS和Androi ...

  3. [2012-08-21] HTTPC 的使用

    最近在项目中使用了httpc模块,出现了一个小问题简单的记录一下 ints:start()  ssl:start() %%http协议 httpc:request(get, {URL, []}, [] ...

  4. 超详细 erlang服务器之微信公众号被动解析用户消息(明文模式安全模式)

    目录 一.前言: 二.配置微信公众号基础接口 (1)填写IP白名单和App Secret (2)配置微信公众号服务器URL​编辑 (3)配置微信公众号网页授权域名 (4)自定义菜单 (4)微信公众号推 ...

  5. erlang的tcp服务器模板

    改来改去,最后放github了,贴的也累,蛋疼 还有一个tcp批量客户端的,也一起了 大概思路是 混合模式 使用erlang:send_after添加recv的超时处理 send在socket的opt ...

  6. Erlang服务端开发(无需Erlang基础)笔试题

    某游戏公司Erlang服务端开发(无需Erlang基础)笔试题,面向C/C++程序员 一.用你熟悉的语言解决下面的问题. 1.反转输出字符串,并移除其中的空格. 2.快速的判断一个数是否素数的方法. ...

  7. erlang调优方法

    2019独角兽企业重金招聘Python工程师标准>>> 1. 来自Scaling Erlang的方法 内核调优: # Increase the ipv4 port range: sy ...

  8. CentOS安装新版RabbitMQ解决Erlang 19.3版本依赖

    2019独角兽企业重金招聘Python工程师标准>>> 通过yum等软件仓库都可以直接安装RabbitMQ,但版本一般都较为保守. RabbitMQ官网提供了新版的rpm包(http ...

  9. centos 6.8 源码安装 erlang/otp 19.0.2

    2019独角兽企业重金招聘Python工程师标准>>> 最近一直都是在debian jessie下开发erlang代码,但部署环境一直都是在centos 6上面,发现centos 6 ...

最新文章

  1. 笔记本电脑双显卡的切换技巧
  2. android permission权限与安全机制解析(上)
  3. kibana操作elasticsearch:创建索引库
  4. 2017-2018-1 20155229 《信息安全系统设计基础》第十三周学习总结
  5. 极限与连续知识点总结_高数上知识点期末复习 极限、连续、间断点(一)
  6. 伦斯勒理工大学计算机专业好申请吗,2020年伦斯勒理工学院申请难度
  7. javafx_JavaFX技巧4:总结
  8. windows上的python能否在unix上使用_怎么用python在Windows系统下,生成UNIX格式文件
  9. Python的逻辑运算符and小析
  10. ENSP配置 实例五 RIP配置
  11. B站黑马Java基础+就业班+各种项目idea版本(正在更新)4测试 反射 注解
  12. count计时器java,倒计时器CountDownLatch
  13. 微信php echo换行,微信小程序文字显示换行问题
  14. 学术英语理工(第二版)Unit1课文翻译
  15. 先验概率和后验概率那点事儿
  16. 研发团队中最合适的开发测试比是多少?
  17. 在计算机找不到资源管理器,XP资源管理器里找不到文件夹选项的解决方法
  18. java随机生成标点符号_java去除空格、标点符号的方法实例
  19. 2009-2019:卢松松博客10周年
  20. Android MediaCodec硬解码AAC音频文件(实时AAC音频帧)并播放

热门文章

  1. iptv增值服务_什么是IPTV,以及如何启动您自己的IPTV服务?
  2. week11作业——C - 必做题11-3
  3. HMI-33-【运动模式】补上油量表和水温表
  4. 微信小程序图片显示模式
  5. 内网环境下的横向移动总结
  6. [转贴]Excel操作技巧大全(微软Office技巧大赛获奖作品)
  7. 高性能两级缓存J2Cache
  8. 文件上传页面出现400错误的问题
  9. 最小生成树————普利姆和克鲁斯卡尔
  10. 批发进销存管理软件,商品分类管理,对商品分类批量价格管理,商品分类导入导出的操作