000社保系统交互协议.html 10 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="content-type" content="text/html;charset=UTF-8">
  5. <style type="text/css">
  6. /* CSS stylesheet is based on killwing's flavored markdown style: https://gist.github.com/2937864 */ body{ margin: 0 auto; font: 13px/1.231 Helvetica, Arial, sans-serif; color: #444444; line-height: 1; max-width: 960px; padding: 5px; } h1, h2, h3, h4 { color: #111111; font-weight: 400; } h1, h2, h3, h4, h5, p { margin-bottom: 16px; padding: 0; } h1 { font-size: 28px; } h2 { font-size: 22px; margin: 20px 0 6px; } h3 { font-size: 21px; } h4 { font-size: 18px; } h5 { font-size: 16px; } a { color: #0099ff; margin: 0; padding: 0; vertical-align: baseline; } a:link,a:visited{ text-decoration:none; } a:hover{ text-decoration:underline; } ul, ol { padding: 0; margin: 0; } li { line-height: 24px; margin-left: 44px; } li ul, li ul { margin-left: 24px; } ul, ol { font-size: 14px; line-height: 20px; max-width: 540px; } p { font-size: 14px; line-height: 20px; max-width: 540px; margin-top: 3px; } pre { padding: 0px 4px; max-width: 800px; white-space: pre-wrap; font-family: Consolas, Monaco, Andale Mono, monospace; line-height: 1.5; font-size: 13px; border: 1px solid #ddd; background-color: #f7f7f7; border-radius: 3px; } code { font-family: Consolas, Monaco, Andale Mono, monospace; line-height: 1.5; font-size: 13px; border: 1px solid #ddd; background-color: #f7f7f7; border-radius: 3px; } pre code { border: 0px; } aside { display: block; float: right; width: 390px; } blockquote { border-left:.5em solid #40AA53; padding: 0 2em; margin-left:0; max-width: 476px; } blockquote cite { font-size:14px; line-height:20px; color:#bfbfbf; } blockquote cite:before { content: '\2014 \00A0'; } blockquote p { color: #666; max-width: 460px; } hr { height: 1px; border: none; border-top: 1px dashed #0066CC } button, input, select, textarea { font-size: 100%; margin: 0; vertical-align: baseline; *vertical-align: middle; } button, input { line-height: normal; *overflow: visible; } button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; } button, input[type="button"], input[type="reset"], input[type="submit"] { cursor: pointer; -webkit-appearance: button; } input[type=checkbox], input[type=radio] { cursor: pointer; } /* override default chrome & firefox settings */ input:not([type="image"]), textarea { -webkit-box-sizing: content-box; -moz-box-sizing: content-box; box-sizing: content-box; } input[type="search"] { -webkit-appearance: textfield; -webkit-box-sizing: content-box; -moz-box-sizing: content-box; box-sizing: content-box; } input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; } label, input, select, textarea { font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 13px; font-weight: normal; line-height: normal; margin-bottom: 18px; } input[type=checkbox], input[type=radio] { cursor: pointer; margin-bottom: 0; } input[type=text], input[type=password], textarea, select { display: inline-block; width: 210px; padding: 4px; font-size: 13px; font-weight: normal; line-height: 18px; height: 18px; color: #808080; border: 1px solid #ccc; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; } select, input[type=file] { height: 27px; line-height: 27px; } textarea { height: auto; } /* grey out placeholders */ :-moz-placeholder { color: #bfbfbf; } ::-webkit-input-placeholder { color: #bfbfbf; } input[type=text], input[type=password], select, textarea { -webkit-transition: border linear 0.2s, box-shadow linear 0.2s; -moz-transition: border linear 0.2s, box-shadow linear 0.2s; transition: border linear 0.2s, box-shadow linear 0.2s; -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1); -moz-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1); box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1); } input[type=text]:focus, input[type=password]:focus, textarea:focus { outline: none; border-color: rgba(82, 168, 236, 0.8); -webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1), 0 0 8px rgba(82, 168, 236, 0.6); -moz-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1), 0 0 8px rgba(82, 168, 236, 0.6); box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1), 0 0 8px rgba(82, 168, 236, 0.6); } /* buttons */ button { display: inline-block; padding: 4px 14px; font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 13px; line-height: 18px; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); background-color: #0064cd; background-repeat: repeat-x; background-image: -khtml-gradient(linear, left top, left bottom, from(#049cdb), to(#0064cd)); background-image: -moz-linear-gradient(top, #049cdb, #0064cd); background-image: -ms-linear-gradient(top, #049cdb, #0064cd); background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #049cdb), color-stop(100%, #0064cd)); background-image: -webkit-linear-gradient(top, #049cdb, #0064cd); background-image: -o-linear-gradient(top, #049cdb, #0064cd); background-image: linear-gradient(top, #049cdb, #0064cd); color: #fff; text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); border: 1px solid #004b9a; border-bottom-color: #003f81; -webkit-transition: 0.1s linear all; -moz-transition: 0.1s linear all; transition: 0.1s linear all; border-color: #0064cd #0064cd #003f81; border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); } button:hover { color: #fff; background-position: 0 -15px; text-decoration: none; } button:active { -webkit-box-shadow: inset 0 3px 7px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); -moz-box-shadow: inset 0 3px 7px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); box-shadow: inset 0 3px 7px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); } button::-moz-focus-inner { padding: 0; border: 0; } /* table */ table { border-spacing: 0; border: 1px solid #ccc; } td, th{ border: 1px solid #ccc; padding: 5px; } /* code syntax highlight. Documentation: http://www.mdcharm.com/documentation/code_syntax_highlighting.html#custom_your_own */ pre .literal, pre .comment, pre .template_comment, pre .diff .header, pre .javadoc { color: #008000; } pre .keyword, pre .css .rule .keyword, pre .winutils, pre .javascript .title, pre .nginx .title, pre .subst, pre .request, pre .status { color: #0000FF; font-weight: bold } pre .number, pre .hexcolor, pre .python .decorator, pre .ruby .constant { color: #0000FF; } pre .string, pre .tag .value, pre .phpdoc, pre .tex .formula { color: #D14 } pre .title, pre .id { color: #900; font-weight: bold } pre .javascript .title, pre .lisp .title, pre .clojure .title, pre .subst { font-weight: normal } pre .class .title, pre .haskell .type, pre .vhdl .literal, pre .tex .command { color: #458; font-weight: bold } pre .tag, pre .tag .title, pre .rules .property, pre .django .tag .keyword { color: #000080; font-weight: normal } pre .attribute, pre .variable, pre .lisp .body { color: #008080 } pre .regexp { color: #009926 } pre .class { color: #458; font-weight: bold } pre .symbol, pre .ruby .symbol .string, pre .lisp .keyword, pre .tex .special, pre .prompt { color: #990073 } pre .built_in, pre .lisp .title, pre .clojure .built_in { color: #0086b3 } pre .preprocessor, pre .pi, pre .doctype, pre .shebang, pre .cdata { color: #999; font-weight: bold } pre .deletion { background: #fdd } pre .addition { background: #dfd } pre .diff .change { background: #0086b3 } pre .chunk { color: #aaa } pre .markdown .header { color: #800; font-weight: bold; } pre .markdown .blockquote { color: #888; } pre .markdown .link_label { color: #88F; } pre .markdown .strong { font-weight: bold; } pre .markdown .emphasis { font-style: italic; }
  7. </style>
  8. </head>
  9. <body>
  10. <h2>000社保系统交互协议</h2>
  11. <h3>APP的版本控制</h3>
  12. <blockquote>
  13. <p>版本控制采用独立的接口,打开APP应用时调用此接口是否有新版本、是否强制升级。</p>
  14. </blockquote>
  15. <h3>请求端</h3>
  16. <blockquote>
  17. <p>域名使用</p>
  18. </blockquote>
  19. <pre><code>
  20. 1. http://app.wodeshebao.com
  21. 主要服务sbl、pay开头的地址。
  22. 2. http://www.wodeshebao.com
  23. 主要服务官网、静态资源、sbw开头的地址(图片上传和访问、App打开接口)
  24. </code></pre>
  25. <blockquote>
  26. <p>接口版本</p>
  27. </blockquote>
  28. <pre><code>初步选择接口的版本号跟在URI后面。例:http://localhost/test/v1
  29. URI中的v1标志此接口的版本
  30. </code></pre>
  31. <blockquote>
  32. <p>HTTP请求头的User-Agent</p>
  33. </blockquote>
  34. <pre><code>手机操作系统类型和版本号、本APP的版本号加入到HTTP请求头的User-Agent字段。
  35. 格式用&quot;#&quot;符号将系统平台和APP版本号间隔开,平台信息在前、APP版本在后在。
  36. </code></pre>
  37. <h3>响应</h3>
  38. <blockquote>
  39. <ul>
  40. <li>响应为JSON格式数据(见下面代码块)。</li>
  41. <li>code: 响应代码,200为成功,其它值为异常代码。</li>
  42. <li>msg: 请求执行消息,成功时为空,异常时带有异常信息。</li>
  43. <li>data: 返回真正的响应数据JSON格式(值是对象,首选是String文本,然后才是对象)</li>
  44. </ul>
  45. </blockquote>
  46. <pre><code class="json">{<span class="attribute">
  47. "code</span>": <span class="value"><span class="number">200</span></span>,<span class="attribute">
  48. "msg</span>": <span class="value"><span class="string">""</span></span>,<span class="attribute">
  49. "data</span>": <span class="value">{<span class="attribute">
  50. "name</span>": <span class="value"><span class="string">"中国",
  51. "</span>age<span class="string">": 9,
  52. "birthday": "2015-08-13 10:28:55"
  53. }
  54. }
  55. </span></span></span></span></code></pre>
  56. </body>
  57. </html>