webApi接口文档-参数标准

一、串联字符串数组的所有元素,其中在每个元素之间使用指定的分隔符(默认为“\n”,不能为 null、空、空白字符)

_delimiterRepresentation为默认的定界符(\n)

1.HTTP method\n:(context.HttpMethod.ToLower(),http请求方法get\post...)

3.Content-MD5\n:(contentMd5Hash,请求内容Md5签名串,如:值090909990计算得到的值为:HDnV/fweHTFPEg+cdwZWQQ==)

  (1)计算指定字节数组的哈希值

    090909990的byte[]值content》》》》计算byte[]的哈希值hash(md5.ComputeHash(content))

  (2)将 8 位无符号整数的数组转换为其用 Base64 数字编码的等效字符串表示形式

    Convert.ToBase64String(hash):HDnV/fweHTFPEg+cdwZWQQ==

4.Response content type (accept header)\n:(context.HttpAcceptType.ToLower(),响应内容类型,如:application/json, text/javascript, */*)

5.Canonicalized URI\n:(url.ToLower(),规范化的url,http://localhost:8061/api/v1/values/11)

6.ISO-8601 UTC timestamp including milliseconds:(timestamp请求时间戳,协调通用时间 (UTC),如:2018-09-27T07:39:48.3820168Z)

7.Public-Key:(context.PublicKey.ToLower(),公钥,由服务方生成并发放,如:3ce1d9800d017264b48feb37e2a5e84d)

   

最终生成的字符串示例如下:

  "get\n\napplication/json, text/javascript, */*\nhttp://localhost:8061/api/v1/values/11\n2018-09-27T07:39:48.3820168Z\n3ce1d9800d017264b48feb37e2a5e84d"

"post\nHDnV/fweHTFPEg+cdwZWQQ==\napplication/json, text/javascript, */*\nhttp://localhost:8061/api/v1/values/\n2018-09-27T08:31:36.1929699Z\n3ce1d9800d017264b48feb37e2a5e84d"

猜你喜欢

转载自www.cnblogs.com/gougou1981/p/9713945.html