前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >nghttp2 中的常用API

nghttp2 中的常用API

作者头像
程序手艺人
发布2019-02-21 16:16:10
2.4K0
发布2019-02-21 16:16:10
举报
文章被收录于专栏:程序手艺人程序手艺人

nghttp2_session_callbacks_new

int nghttp2_session_callbacks_new(nghttp2_session_callbacks*callbacks_ptr)

  • 当初始化多个 nghttp2_session对象, 可以使用初始化的对象,当应用程序使用这个对象完成时,可以使用 nghttp2_session_callbacks_del可以释放它的内存.

nghttp2_session_client_new

int nghttp2_session_client_new(nghttp2_session*session_ptr, const nghttp2_session_callbackscallbacks, void* user_data)

  • 初始化*session_ptr给客户端使用,回调的所有成员被复制到*session_ptr,因此*session_ptr不存储回调,user_data是任意用户提供的数据,将被传递给回调函数.

nghttp2_submit_settings

int nghttp2_submit_settings(nghttp2_sessionsession, uint8_t* flags*, const nghttp2_settings_entryiv, size_t* niv*)

  • 存储本地设置并提交设置的框架
  • flags当前被忽略,应该是 NGHTTP2_FLAG_NONE

nghttp2_submit_request

int32_t nghttp2_submit_request(nghttp2_sessionsession, const nghttp2_priority_specpri_spec, const nghttp2_nvnva, size_t* nvlen*, const nghttp2_data_providerdata_prd, void* stream_user_data)

  • 提交HEADERS帧和可选的一个或多个数据帧

nghttp2_session_callbacks_set_send_callback

void nghttp2_session_callbacks_set_send_callback(nghttp2_session_callbackscbsnghttp2_send_callback* send_callback*)

  • 设置会话想要发送数据到远程时调用的回调函数

nghttp2_session_callbacks_set_recv_callback

void nghttp2_session_callbacks_set_recv_callback(nghttp2_session_callbackscbsnghttp2_recv_callback* recv_callback*)

  • 当会话想要从远程接收数据时调用的回调函数

nghttp2_session_callbacks_set_on_data_chunk_recv_callback

void nghttp2_session_callbacks_set_on_data_chunk_recv_callback(nghttp2_session_callbackscbsnghttp2_on_data_chunk_recv_callback* on_data_chunk_recv_callback*)

  • 设置在接收到数据帧中的大块数据时调用的回调函数

nghttp2_session_callbacks_set_on_header_callback

void nghttp2_session_callbacks_set_on_header_callback(nghttp2_session_callbackscbsnghttp2_on_header_callback* on_header_callback*)

  • 设置收到 header name / value 时调用的回调函数

nghttp2_session_callbacks_set_on_stream_close_callback

void nghttp2_session_callbacks_set_on_stream_close_callback(nghttp2_session_callbackscbsnghttp2_on_stream_close_callback* on_stream_close_callback*)

  • 设置流关闭时调用的回调函数

nghttp2_session_get_stream_user_data

void * nghttp2_session_get_stream_user_data(nghttp2_sessionsession, int32_t* stream_id*)

  • 返回stream_id的流的stream_user_data,stream_user_datanghttp2_submit_request,nghttp2_submit_headers,nghttp2_session_set_stream_user_data提供

nghttp2_submit_rst_stream

int nghttp2_submit_rst_stream(nghttp2_sessionsession, uint8_t* flags*, int32_t* stream_id*, uint32_t* error_code*)

  • 提交RST_STREAM帧以取消/拒绝错误代码为error_code的流stream_id

nghttp2_session_send

int nghttp2_session_send(nghttp2_sessionsession)

  • 将挂起的帧发送到远程peer
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018年01月17日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • nghttp2_session_callbacks_new
  • nghttp2_session_client_new
  • nghttp2_submit_settings
  • nghttp2_submit_request
  • nghttp2_session_callbacks_set_send_callback
  • nghttp2_session_callbacks_set_recv_callback
  • nghttp2_session_callbacks_set_on_data_chunk_recv_callback
  • nghttp2_session_callbacks_set_on_header_callback
  • nghttp2_session_callbacks_set_on_stream_close_callback
  • nghttp2_session_get_stream_user_data
  • nghttp2_submit_rst_stream
  • nghttp2_session_send
相关产品与服务
云硬盘
云硬盘(Cloud Block Storage,CBS)为您提供用于 CVM 的持久性数据块级存储服务。云硬盘中的数据自动地在可用区内以多副本冗余方式存储,避免数据的单点故障风险,提供高达99.9999999%的数据可靠性。同时提供多种类型及规格,满足稳定低延迟的存储性能要求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档