http://www.aygfsteel.com/ebecket 返還網
          隨筆-140  評論-11  文章-131  trackbacks-0

          UAP Server 接口手冊 v0.3

          出自ND APP Wiki

          跳轉到: 導航, 搜索

          目錄

          [隱藏]

          概述

          測試用戶

          • userid:1,用戶名密碼:user1/user1ssss
          • userid:2,用戶名密碼:user2/user1ssss

          測試工具

          http://192.168.94.19/uaps/tools/apitest.php

          統一響應

          • HTTP響應碼
            • 200 服務端響應成功
            • 204 服務端響應成功,不過沒有要返回的數據,通常用于 GET 的情況下
            • 400 輸入不合法,提交的數據不是 json 格式時,返回此狀態碼
            • 401 沒有請求的權限(除了請求自己的信息有權限外,其他都需要使用apikey[相當管理員權限])
            • 405 請求的方法不存在
            • 501 接口未實現

          格式

          • 返回內容中的時間格式統一為 YYYY-MM-DD hh:mm:ss

          接口列表

          認證

          用戶登錄

          • 請求方式:POST
          • 請求資源:/login(用https協議)
          • 請求對象:
          {
          "appid":"應用ID 必須",
          "username":"用戶名 必須",
          "password":"密碼 必須"
          }
          • 響應代碼:
            • 200 登錄成功
            • 404 用戶不存在/用戶名為空/密碼為空/應用ID不存在
            • 403 認證失敗/密碼錯誤
            • 423 用戶登錄限制(密碼錯誤3次就會受限,測試機不會)
          • 響應內容:
          {"uid":"用戶ID","sid":"Session ID"}

          用戶登出

          • 請求方式:POST
          • 請求資源:/logout/{uid}?sid={sid}(用https協議)
            • uid 必填,用戶ID
            • sid 必填,Session ID
          • 請求對象:NULL
          • 響應代碼:
            • 200 成功登出
          • 響應內容:NULL

          SESSION 驗證

          • 請求方式:GET
          • 請求資源:/checksession?sid={sid}(用https協議)
            • sid 必填,Session ID
          • 請求對象:NULL
          • 響應代碼:
            • 200 成功驗證
          • 響應內容:
          {
          "uid":"用戶ID",
          }
            • 401 驗證失敗
          • 響應內容:false

          用戶

          用戶注冊

          • 請求方式:POST
          • 請求資源:/user(用https協議)
          • 請求對象:
          {
          "username":"用戶名,4-70字符串,必須",
          "password":"密碼,7-12字符串必須",
          "realname":"真實姓名,2-4個漢字,必須",
          "idcard":"身份證號碼,15或18位,可選",
          "mobile":"聯系電話,可選",
          "telephone":"固話,可選",
          "nickname":"昵稱,1-20個字符,可選,唯一",
          "email":"郵箱",
          "sex":"性別 0保密,1男,2女",
          "qq":"QQ號碼",
          "msn":"MSN帳號",
          "birthyear":"出生年份",
          "birthmonth":"出生月份",
          "birthday":"出生日",
          "blood":"血型",
          "marry":"婚否",
          "birthprovince":"出生省份,省份代碼,如350000代表福建省(身份證的前6位)",
          "birthcity":"出生城市,城市代碼,如350100代碼福州市(身份證的前6位)",
          "resideprovince":"目前所在省,省份代碼,如350000代表福建省(身份證的前6位)",
          "residecity":"所在城市,城市代碼,如350100代碼福州市(身份證的前6位)"
          }
          • 響應代碼:
            • 201 創建成功
            • 400 用戶名或密碼為空
            • 403 身份證號碼不合法/郵箱、MSN格式錯誤/手機號碼格式錯誤
            • 409 該用戶已存在/昵稱已存在
          • 響應內容:
          {
          "uid":"新用戶ID",
          "username":"用戶名",
          "sid":"session id"
          }

          用戶修改

          • 請求方式:PUT
          • 請求資源:/user/{uid}
            • uid 必填,用戶ID
          • 請求對象:
          {
          "realname":"真實姓名,2-4個漢字,可選",
          "idcard":"身份證號碼,15或18位,可選",
          "mobile":"聯系電話,可選",
          "telephone":"固話,可選",
          "nickname":"昵稱,1-20個字符,可選,唯一",
          "email":"郵箱",
          "sex":"性別 0保密,1男,2女",
          "qq":"QQ號碼",
          "msn":"MSN帳號",
          "birthyear":"出生年份",
          "birthmonth":"出生月份",
          "birthday":"出生日",
          "blood":"血型",
          "marry":"婚否",
          "birthprovince":"出生省份,省份代碼,如350000代表福建省(身份證的前6位)",
          "birthcity":"出生城市,城市代碼,如350100代碼福州市(身份證的前6位)",
          "resideprovince":"目前所在省,省份代碼,如350000代表福建省(身份證的前6位)",
          "residecity":"所在城市,城市代碼,如350100代碼福州市(身份證的前6位)"
          }
          • 響應代碼
            • 200 修改成功
            • 409 昵稱已存在
            • 404 請求的用戶不存在
            • 403 身份證號不合法/郵箱、MSN格式錯誤
          • 響應內容:NULL

          獲取用戶

          • 請求方式:GET
          • 請求資源:/user/{uid}
            • uid 必填,用戶ID
          • 請求對象:NULL
          • 響應代碼:
            • 200 成功
            • 404 用戶不存在
          • 響應內容:
            • 獲取自己的信息
          {
          "uid":"用戶ID",
          "imid":"91U ID",
          "username":"用戶名",
          "nickname":"昵稱",
          "regip":"注冊時IP",
          "regdate":"注冊時間",
          "lastloginip":"最后登錄IP",
          "lastlogintime":"最后登錄時間",
          "email":"郵箱",
          "emailcheck":"郵箱是否已驗證",
          "realname":"真實姓名",
          "idcard":"身份證號碼",
          "vip":"VIP星級",
          "mobile":"移動電話",
          "telephone":"固話",
          "sex":"性別 0保密,1男,2女",
          "qq":"QQ號碼",
          "msn":"MSN帳號",
          "birthyear":"出生年份",
          "birthmonth":"出生月份",
          "birthday":"出生日",
          "blood":"血型",
          "marry":"婚否",
          "birthprovince":"出生省份",
          "birthcity":"出生城市",
          "resideprovince":"目前所在省",
          "residecity":"所在城市"
          }
            • 獲取好友的信息(雙向好友)
          {
          "uid":"用戶ID",
          "imid":"91U ID",
          "username":"用戶名",
          "nickname":"昵稱",
          "regdate":"注冊時間",
          "email":"郵箱",
          "emailcheck":"郵箱是否已驗證",
          "vip":"VIP星級",
          "sex":"性別 0保密,1男,2女",
          "msn":"MSN帳號",
          "birthyear":"出生年份",
          "birthmonth":"出生月份",
          "birthday":"出生日",
          "blood":"血型",
          "birthprovince":"出生省份",
          "birthcity":"出生城市",
          "resideprovince":"目前所在省",
          "residecity":"所在城市"
          }


            • 獲取陌生人的信息
          {
          "uid":"用戶ID",
          "imid":"91U ID",
          "username":"用戶名",
          "nickname":"昵稱",
          "sex":"性別 0保密,1男,2女",
          "resideprovince":"目前所在省",
          "residecity":"所在城市"
          }

          用戶查詢

          • 請求方式:GET
          • 請求資源:
             /user?nickname={nickname}(nickname必填) 或
          /user?username={username}(username必填) 或
          /user?email={email}(email必填) 或
          /user?mobile={mobile}(mobile必填) 或
          /user?imid={imid}(imid必填) 或
          /user?realname={realname}[&city={residecity}][&sex={sex}][&birthyear={birthyear}](realname必填)
          
            • 以上中括號[]表示可選
          • 請求對象:NULL
          • 響應代碼:
            • 200 查詢成功
            • 404 昵稱不存在/昵稱為空/用戶名不能存在/用戶名為空
          • 響應內容
          {
          "0":{"uid":"用戶ID",
          "imid":"91UID",
          "username":"用戶名",
          "nickname":"呢稱"
          }
          }

          好友

          雙向和關注好友上限200人

          新增好友

          • 請求方式 POST
          • 請求資源 /friend/{uid}/{fid}
            • uid 必填,用戶ID
            • fid 必填,要添加的好友ID
          • 請求數據
          {
          "comment":"備注內容,默認為空,可選(最大255個字符)",
          "attention":"是否為關注好友,值0或1,默認為0,可選",
          "gids":"用戶分組ID,多個ID用半角的“,”隔開,默認為0,可選"
          }
          • 響應代碼
            • 200 添加成功
            • 404 用戶不存在/好友不存在/用戶組不存在
            • 403 不能添加自己為好友
            • 409 已經添加該用戶為好友/好友已經到上限
          • 響應內容
            • 成功:內容為空
            • 失敗:
          {"msg":"錯誤消息"}

          修改好友

          • 請求方式 PUT
          • 請求資源 /friend/{uid}/{fid}
            • uid 必填,用戶ID
            • fid 必填,要修改的好友ID
          • 請求數據
          {
          "comment":"備注內容,默認為空,可選(最大255個字符)",
          "attention":"是否為關注好友,值0或1,默認為0,可選",
          "gids":"用戶分組ID,多個ID用半角的“,”隔開,默認為0,可選"
          }
          • 響應代碼
            • 200 修改成功
            • 404 用戶不存在/好友不存在/修改失敗/用戶組不存在
            • 403 不能加自己為好友
          • 響應內容
            • 成功:內容為空
            • 失敗:
          {"msg":"錯誤消息"}

          刪除好友

          • 請求方式 DELETE
          • 請求資源 /friend/{uid}/{fid}
            • uid 必填,用戶ID
            • fid 必填,可刪除的好友ID
          • 請求數據
            • NULL
          • 響應代碼
            • 200 刪除成功
            • 404 要刪除的用戶不存在
          • 響應內容
            • 成功:內容為空
            • 失敗:
          {"msg":"錯誤消息"}

          獲取好友列表

          • 請求方式 GET
          • 請求資源 /friend/{uid}?start=0&pos=100&direction=0
            • uid 必填,用戶ID
            • start 可選,從第幾條開始獲取,默認為 0
            • pos 可選,獲取多少條,默認值為100,最大為100
            • direction 可選,默認為 0,1為單向好友 2為雙向好友 3為關注的好友
          • 請求數據
            • NULL
          • 響應代碼
            • 200 獲取成功
            • 404 用戶不存在
          • 響應內容
            • 成功:
          {
          "total":"好友總數",
          "start":"開始記錄數",
          "pos":"返回記錄數",
          "direction":"好友類型"
          "data":{
          "0":{
          "uid":"用戶ID",
          "fid":"好友ID",
          "direction":"好友類型",
          "comment":"備注",
          "group":{
          "0":{"gid":"分組ID","grouptitle":"分組名"},
          ...
          },
          "username":"好友用戶名",
          "nickname":"好友昵稱",
          "realname":"好友真實姓名"
          }
          },
          ...
          }
            • 失敗:
          {"msg":"錯誤消息"}

          好友分組

          • 單個用戶好友分組上限 20 個

          新增好友分組

          • 請求方式 POST
          • 請求資源 /friend/group/{uid}
            • uid 必填,用戶ID
          • 請求數據
          { "grouptitle":"好友分組名稱(最大20字節)" }
          • 響應代碼
            • 200 添加成功
            • 404 用戶不存在
            • 403 分組名不允許為空
            • 406 添加好友分組失敗
            • 409 分組已存在/分組已經到上限
          • 響應內容
            • 成功:NULL
            • 失敗:
          {"msg":"錯誤消息"}

          修改好友分組

          • 請求方式 PUT
          • 請求資源 /friend/group/{uid}/{gid}
            • uid 必填,用戶ID
            • gid 必填,要修改的分組ID
          • 請求數據
          { "grouptitle":"好友分組新名稱(最大20字節)" }
          • 響應代碼
            • 200 添加成功
            • 404 用戶不存在/好友分組不存在
            • 403 分組名不允許為空
          • 響應內容
            • 成功:NULL
            • 失敗:
          {"msg":"錯誤消息"}

          獲取好友分組列表

          • 請求方式 GET
          • 請求資源 /friend/group/{uid}
            • uid 必填,用戶ID
          • 請求數據:NULL
          • 響應代碼
            • 200 添加成功
            • 404 用戶不存在
          • 響應內容
            • 成功:
          {"total":"分組總數",
          "data":
          {
          "0":{
          "gid":"分組ID",
          "uid":"用戶ID",
          "grouptitle":"分組名稱",
          "data":{
          "0":{"friendid":"好友ID","username":"好友用戶名","nickname":"好友昵稱","realname":"好友真實姓名"},
          ...
          }
          }
          ...
          }
          }
            • 失敗:
          {"msg":"錯誤消息"}

          獲取好友分組

          • 請求方式 GET
          • 請求資源 /friend/group/{uid}/{gid}
            • uid 必填,用戶ID
            • gid 必填,好友分組ID
          • 請求數據:NULL
          • 響應代碼
            • 200 添加成功
            • 404 用戶不存在/好友分組不存在
          • 響應內容
            • 成功:
          {
          "gid":"分組ID",
          "uid":"用戶ID",
          "grouptitle":"分組名稱",
          "data":{
          "0":{"friendid":"好友ID","username":"好友用戶名","nickname":"好友昵稱","realname":"好友真實姓名"},
          ...
          }
          }
            • 失敗:
          {"msg":"錯誤消息"}

          刪除好友分組

          • 請求方式 DELETE
          • 請求資源 /friend/group/{uid}/{gid}
            • uid 必填,用戶ID
            • gid 必填,要刪除的分組ID
          • 請求數據:NULL
          • 響應代碼
            • 200 刪除成功
            • 404 用戶不存在/好友分組不存在
          • 響應內容
            • 成功:NULL
            • 失敗:
          {"msg":"錯誤消息"}

          黑名單

          • 黑名單上限 200 個

          新增黑名單

          • 請求方式 POST
          • 請求資源 /blacklist/{uid}/{bid}
            • uid 必填,用戶ID
            • bid 必填,被添加用戶ID
          • 請求數據
          { "comment":"備注內容(最大255字節)" }
          • 響應代碼
            • 200 添加成功
            • 404 用戶不存在/被添加用戶不存在
            • 403 不能添加自己到黑名單
            • 409 黑名單人數已達到上限
          • 響應內容
            • 成功:NULL
            • 失敗:
          {"msg":"錯誤消息"}

          刪除黑名單

          • 請求方式 DELETE
          • 請求資源 /blacklist/{uid}/{bid}
            • uid 必填,用戶ID
            • bid 必填,被刪除用戶ID(黑名單用戶ID)
          • 請求數據
            • NULL
          • 響應代碼
            • 200 刪除成功
            • 404 要刪除的用戶不存在
          • 響應內容
            • 成功:內容為空
            • 失敗:
          {"msg":"錯誤消息"}

          獲取黑名單

          • 請求方式 GET
          • 請求資源 /blacklist/{uid}
            • uid 用戶ID
          • 請求數據
            • NULL
          • 響應代碼
            • 200 獲取成功
            • 204 黑名單為空、無記錄
            • 404 用戶不存在
          • 響應內容
            • 成功:
          {
          "data":{
          "0":{
          "uid":"用戶ID",
          "friendid":"黑名單用戶(好友)ID",
          "comment":"備注",
          "username":"用戶登錄名",
          "nickname":"昵稱",
          "realname":"真實姓名"
          }
          ...
          }
          }
            • 失敗:
          {"msg":"錯誤消息"}

          短消息

          短消息列表

          • 請求方式 GET
          • 請求資源 pm/{uid}?start=0&pos=100&folder=inbox&type={global}
            • uid: 必填,用戶ID
            • start: 可選,起始記錄,默認為0
            • pos: 可選,偏移量,即所取記錄數,默認為100,最大為100
            • folder: 可選,短消息類型, inbox=收件箱, outbox=發件箱, 默認為inbox
            • type: 可選,當值type=global時,為獲取公共短消息列表
          • 請求數據: NULL
          • 響應代碼:
            • 200 成功
            • 204 請求成功,不過沒有任何要返回的消息
            • 400 非法請求
            • 404 用戶不存在
          • 響應內容:
          {
          "total":"總筆數",
          "folder":"請求類型",
          "start":"起始條數",
          "pos":"偏移條數",
          "data":{
          "0":{
          "pmid":"短消息ID",
          "msgfrom":"發送人用戶名",
          "msgfromid":"發送人ID",
          "msgtoid":"接收人ID",
          "folder":"短消息類型",
          "new":"標識位",
          "subject":"標題",
          "dateline":"時間戳",
          "message":"內容",
          "fromappid":"應用ID"
          },
          ...
          }
          }

          獲取指定短消息

          • 請求方式 GET
          • 請求資源 pm/{uid}/{pid}
            • uid: 必填,用戶ID
            • pid: 必填,要獲取的短消息ID
          • 請求數據: NULL
          • 響應代碼:
            • 200 成功
            • 204 短消息不存在
            • 403 沒權限
            • 404 用戶不存在
          • 響應內容:
          {
          "pmid":"短消息ID",
          "msgfrom":"發送人用戶名",
          "msgfromid":"發送人ID",
          "msgtoid":"接收人ID",
          "folder":"短消息類型",
          "new":"標識位",
          "subject":"標題",
          "dateline":"時間戳",
          "message":"內容",
          "fromappid":"應用ID"
          }

          刪除短消息

          • 請求方式 DELETE
          • 請求資源 pm/{uid}/{pid}
            • uid 必填,用戶ID
            • pid 必填,要刪除的短消息ID
          • 請求數據: NULL
          • 響應代碼:
            • 200 成功
            • 204 短消息不存在
            • 403 沒權限刪除
            • 404 用戶不存在
          • 響應內容: NULL

          發送新短消息

          • 請求方式 POST
          • 請求資源 pm/{uid}/{tid}
            • uid: 必填,用戶ID
            • tid: 必填,接收用戶ID
          • 請求數據:
          {
          "subject":"標題(最大75字節)",
          "message":"內容",
          "fromappid":"應用ID"
          }
          • 響應代碼:
            • 200 成功
            • 404 用戶不存在
            • 403 給自己發送短消息
            • 409 標題或內容為空
          • 響應內容:
          {
          "pid":"短消息ID"
          }

          修改短消息狀態

          • 請求方式 PUT
          • 請求資源 pm/{uid}/{pid}
            • uid: 必填,用戶ID
            • pid: 必填,短消息ID
          • 請求數據:
          {"status": "1或0"}
          • 響應代碼:
            • 200 成功
            • 204 短消息不存在
            • 403 沒權限
            • 404 用戶不存在
          • 響應內容: NULL

          新短消息數

          • 請求方式 GET
          • 請求資源 pm/new/{uid}
            • uid 必填,用戶ID
          • 請求數據: NULL
          • 響應代碼:
            • 200 成功
            • 204 沒有新短消息
            • 404 請求的用戶不存在
          • 響應內容:
            • 成功
          {
          "uid":"用戶ID",
          "count":"新短消息數"
          }
            • 失敗
          {
          "msg":"返回信息"
          }

          發送公共短消息

          • 請求方式 POST
          • 請求資源 pm?type=global
            • type=global 為必填,需要 APIKEY 授權
          • 請求數據:
          {
          "subject":"標題(最大75字節)",
          "message":"內容",
          "fromappid":"應用ID"
          }
          • 響應代碼:
            • 200 成功
            • 403 無權限
            • 409 標題或內容為空
          • 響應內容:
            • 成功
          {
          "pid":"短消息ID"
          }
            • 失敗
          {
          "msg":"錯誤信息"
          }

          事件

          獲取用戶事件

          • 請求方式 GET
          • 請求資源 /feed/{uid}?start=0&pos=100&format=json
            • uid: 必填,查看指定用戶 ID 的事件列表,uid 為 0 時獲取所有事件 (需要 APIKEY 權限)
            • start: 可選,從第幾條開始取,默認為 0
            • pos: 可選,取多少條事件,默認為 100,最大為 100
            • format: 可選,返回的列表格式,默認為 json 格式
              • html: 返回 html 格式,服務器端渲染后返回
              • json: 返回 json 格式,用于 web 應用時,可以通過瀏覽器 DOM 渲染
          • 請求數據:
            • 如果要同時獲取多個用戶的事件列表,請將多個用戶ID以逗號分隔傳值,最多允許同時獲取 200 個用戶的事件 (需要 APIKEY 權限)
           GET /feed/1,2,3,4
          
          • 響應代碼:
            • 200 請求成功
            • 204 請求成功,不過沒有任何要返回的事件
            • 404 請求的用戶不存在
            • 403 請求過程中發生錯誤,具體錯誤信息見返回消息
          • 響應內容:
          成功
          {
          "start": "起始條數",
          "pos": "偏移條數",
          "format": "返回的標題和內容數據類型,json 或 html",
          "count": "返回的事件條數",
          "data": {
          "0": {
          "feedid": "事件ID",
          "appid": "應用ID",
          "typeid": "事件類型",
          "uid": "事件發起的用戶ID (獲取所有事件,或多個用戶事件時才有值)",
          "username": "事件發起的用戶名 (獲取所有事件,或多個用戶事件時才有值)",
          "title": "事件標題",
          "body": "事件內容",
          "dateline": "事件發生的時間(UNIX時間戳)",
          "extra": "附加數據,請求添加事件接口的時候,輸入的數據原樣返回",
          },
          ...
          }
          }
          失敗
          {"msg": "錯誤消息"}

          獲取好友事件

          • 請求方式 GET
          • 請求資源 /feed/friend/{uid}?start=0&pos=100&format=json
            • uid: 必填,查看指定用戶 ID 的所有好友事件列表
            • start: 可選,從第幾條開始取,默認為 0
            • pos: 可選,取多少條事件,默認為 100,最大為 100
            • format: 可選,返回的列表格式,默認為 json 格式
              • html: 返回數據中的 title 和 body 為解析后的 html 格式,服務器端解析后返回
              • json: 返回數據中的 title 和 body 為 json 格式,用于 web 應用時,可以通過瀏覽器動態解析用
          • 請求數據: NULL
          • 響應代碼:
            • 200 請求成功
            • 204 請求成功,不過沒有任何要返回的事件
            • 404 請求的用戶不存在
            • 403 請求過程中發生錯誤,具體錯誤信息見返回消息
          • 響應內容:
            • 成功
          {
          "start": "起始條數",
          "pos": "偏移條數",
          "format": "返回的標題和內容數據類型,json 或 html",
          "count": "返回的事件條數",
          "data": {
          "0": {
          "feedid": "事件ID",
          "appid": "發起事件的應用ID",
          "typeid": "事件類型",
          "title": "事件主題",
          "body": "事件內容",
          "dateline": "事件發生的時間(UNIX時間戳)",
          "extra": "附加數據,請求添加事件接口的時候,輸入的數據原樣返回"
          },
          ...
          }
          }
            • 失敗
          {"msg": "錯誤消息"}


          獲取應用事件

          • 該方法需要 APIKEY 權限
          • 請求方式 GET
          • 請求資源 /feed/apps/{appid}?start=0&pos=100&format=json&exclude=0&dateline=0
            • appid: 必填,查看指定應用 ID 的事件(注:exclude為1時為 排除模式
            • start: 可選,從第幾條開始取,默認為 0
            • pos: 可選,取多少條事件,默認為 100,最大為 500
            • format: 可選,返回的列表格式,默認為 json 格式
              • html: 返回數據中的 title 和 body 為解析后的 html 格式,服務器端解析后返回
              • json: 返回數據中的 title 和 body 為 json 格式,用于 web ajax 應用時,可以通過瀏覽器動態解析用
            • exclude: 可選,默認為0,為1的時候,請求的應用ID為排除模式
            • dateline: 可選,時間戳格式,默認為 0,取最新的事件,如果有指定的話,則只返回該時間之后的事件
          • 請求數據:
            • 如果要同時獲取多個應用的事件列表,請將多個應用ID以逗號分隔傳值,最多允許同時獲取 100 個應用的事件
           GET /feed/apps/1,2,3,4
          
          • 響應代碼:
            • 200 請求成功
            • 204 請求成功,不過沒有任何要返回的事件
            • 404 請求的應用不存在
            • 403 請求過程中發生錯誤,具體錯誤信息見返回消息
          • 響應內容:
            • 成功
          {
          "start": "起始條數",
          "pos": "偏移條數",
          "format": "返回的標題和內容數據類型,json 或 html",
          "count": "返回的事件條數",
          "data": {
          "0": {
          "feedid": "事件ID",
          "appid": "發起事件的應用ID",
          "typeid": "事件類型",
          "uid": "事件發起的用戶ID",
          "username": "事件發起的用戶名",
          "title": "事件主題",
          "body": "事件內容",
          "dateline": "事件發生的時間(UNIX時間戳)",
          "extra": "附加數據,請求添加事件接口的時候,輸入的數據原樣返回"
          },
          ...
          }
          }
            • 失敗
          {"msg": "錯誤消息"}

          新事件/添加事件

          • 請求方式 POST
          • 請求資源 /feed/{uid}
            • uid 必填,事件的發起用戶ID
          • 請求數據
          {
          "typeid": "必填,新事件類型ID,僅允許在系統事件分類表中存在的類型",
          "title": "必填,事件標題數據,json格式",
          "body": "可選,事件內容數據,json格式",
          "appid": "可選, 應用ID",
          "extra": "可選,附加數據,獲取的時候會原樣返回"
          }
          • 響應代碼:
            • 200 事件創建成功
            • 403 請求的格式不合法
            • 404 請求的用戶不存在
            • 406 找不到請求的事件分類ID,或應用ID不存在,具體參考錯誤信息
            • 500 事件創建失敗
            • 成功: NULL
            • 失敗
          {"msg": "錯誤消息"}

          獲取事件分類

          • 該方法需要 APIKEY 權限
          • 請求方式 GET
          • 請求資源 /feed/type/{typeid}?start=0&pos=100&appid=0
            • typeid: 可選,要獲取的分類ID。可同時獲取多個分類ID,請求的時候用逗號隔開即可。為空時獲取系統所有分類列表。
            • start: 可選,要獲取的分類列表起始條數,默認為 0
            • pos: 可選,要獲取的分類列表條數,默認為 100,最大為 100
            • appid: 可選,只獲取與 appid 相關的事件分類,默認為 0,獲取所有應用的分類
          • 響應代碼:
            • 200 獲取成功
            • 204 沒有要返回的數據
          成功
          • 單條返回內容
          {
          "typeid":"分類ID",
          "typename":"分類名稱",
          "appid":"所屬應用ID",
          "icon":"分類圖標",
          "title_tpl":"分類標題模板",
          "body_tpl":"分類內容模板"
          }
          • 列表返回內容
          {
          "start":"起始條數""pos":"偏移條數",
          "count": "返回的記錄數",
          "data": {
          "0": {
          "typeid":"分類ID",
          "typename":"分類名稱",
          "appid":"所屬應用ID",
          "icon":"分類圖標",
          "title_tpl":"分類標題模板",
          "body_tpl":"分類內容模板"
          }
          ...
          }
          }
          }
          失敗
          {"msg": "錯誤消息"}

          群組

          獲取群組信息

          • 請求方式 GET
          • 請求資源 /group?paramtype=xxx&paramvalue=xxx[&start=xxx&pos=xxxx]
            • paramtye 必填,查詢的類型(1-根據用戶id查找;2-根據群id查找;3-根據群名查找;4-根據群類型查找;5-根據群創建者查找)
            • paramvalue 必填,paramvalue對應的參數
            • start 選填 分頁查找的起始數,默認是1,從第一條記錄開始查找。
            • pos 選填 分頁查找的條數,默認是30。
          • 請求數據
            • NULL
          • 響應代碼
            • 200 獲取成功
            • 403 沒有權限訪問
            • 404 用戶不存在 或者群組不存在
            • 405 參數錯誤
          • 響應內容
          • 成功
          {
          "total":"總的群組數",
          "data":{
          "0":{
          "gid":"群組ID",
          "gname":"群組名",
          "membermaxnum":"群組最大數",
          "membernum":"現有人數",
          "joinperm":"加入權限(0-不需要審批;1-需要管理員審批;2-添加人需要是管理員;3-不允許添加)",
          "viewperm":"瀏覽權限(0-所有人都可以瀏覽;1-群組成員可以瀏覽;2-不允許瀏覽"),
          "close":"鎖定(0-狀態是開放的;1-狀態鎖定,除了創建者,其他人不可以做任何操作)",
          "notice":"群組公告",
          "introduction":"群組簡介",
          "classid":"群組類型(從1開始,暫時到4)",
          "areascode":"群組地域編號(參見編號表,350000之類的字符串)",
          "createtime":"創建時間",
          "creatorid":"創建者id",
          "gimage":"群圖標(超鏈接)"
          },
          "1":{
          ........
          },
          ......
          }
          }
          • 失敗
          {"msg":"錯誤消息"}

          修改群組信息

          • 請求方式 PUT
          • 請求資源 /group/{gid}
            • gid 必填,要修改的群組ID
          • 請求數據
          {
          "gname":"群組名(可選)",
          "joinperm":"加入權限(0-不需要審批;1-需要管理員審批;2-添加人需要是管理員;3-不允許添加)(可選)",
          "viewperm":"瀏覽權限(0-所有人都可以瀏覽;1-群組成員可以瀏覽;2-不允許瀏覽)(可選)",
          "close":"鎖定(0-狀態是開放的;1-狀態鎖定,除了創建者,其他人不可以做任何操作)(可選)",
          "notice":"群組公告(可選)",
          "introduction":"群組簡介(可選)",
          "classid":"群組類型(可選,從1開始,暫時到4)",
          "areascode":"群組地域編號(參見編號表,350000之類的字符串)(可選)",
          "gimage":"群圖標(可選,超鏈接)"
          }
          • 響應代碼
            • 200 修改成功
            • 403 沒有權限
            • 404 用戶不存在 或者群組不存在
            • 405 請求參數錯誤
            • 500 服務器錯誤
          • 響應內容
          • 成功
          • NULL
          • 失敗
          {"msg":"錯誤消息"}

          創建群組

          • 請求方式 POST
          • 請求資源 /group
          • 請求數據
          {
          "gname":"群組名",
          "membermaxnum":"群組最大數",
          "joinperm":"加入權限(0-不需要審批;1-需要管理員審批;2-添加人需要是管理員;3-不允許添加)",
          "viewperm":"瀏覽權限(0-所有人都可以瀏覽;1-群組成員可以瀏覽;2-不允許瀏覽"),
          "introduction":"群組簡介",
          "classid":"群組類型",
          "areascode":"群組地域編號(參見編號表)(選填)",
          "gimage":"群圖標(選填)"
          }
          • 響應代碼
            • 201 創建成功
            • 404 用戶不存在
            • 405 請求參數錯誤
            • 500 服務器錯誤sql執行出錯
          • 響應內容
          • 成功
          {
          "gid":"返回的創建成功的群組ID"
          }
          • 失敗
          {"msg":"錯誤消息"}

          刪除群組

          • 請求方式 DELETE
          • 請求資源 /group/{gid}
            • gid 必填,要刪除群組ID
          • 請求數據
            • NULL
          • 響應代碼
            • 200 刪除成功
            • 403 不是創建者,沒有權限刪除
            • 404 群組不存在
            • 405 請求參數錯誤
            • 500 服務器錯誤sql執行出錯
          • 響應內容
          • 成功
          • NULL
          • 失敗
          {"msg":"錯誤消息"}

          群成員管理

          • 每個群的人數上限是200 個

          新增群組成員

          • 請求方式 POST
          • 請求資源 /group/member/{gid}
            • gid 必填,群組ID
          • 請求數據
          {
          "uid":"所要添加的群組成員的uid"
          }
          • 響應代碼
            • 200 新增成功
            • 404 用戶不存在或者群組不存在
            • 403 要添加的用戶已經存在于群組中,不允許重復添加 或者 用戶沒有權限添加 或者 群組不允許添加新成員
            • 405 請求參數錯誤
            • 409 分組已經到上限
          • 響應內容
          • 成功
          NULL
          • 失敗
          {"msg":"錯誤消息"}

          獲取群組成員

          • 請求方式 GET
          • 請求資源 /group/member/{gid}[?start=xxx&pos=xxx]
            • gid 必填,群組ID
            • start 選填 獲取的成員列表的起始計數基點,默認是1,從第一條開始查找
            • pos 選填 要獲取的成員數,默認是30
          • 請求數據
            • NULL
          • 響應代碼
            • 200 獲取成功
            • 404 群組不存在
            • 403 沒有權限
            • 405 請求參數錯誤
            • 500 執行失敗
          • 響應內容
          • 成功
          {"total":"總數",
          "data":{
          "0":{
          "uid":"用戶ID""username":"用戶名",
          "grade": "權限"
          }
          .........
          }
          }
          • 失敗:
          {"msg":"錯誤消息"}

          修改群組成員信息

          • 請求方式 PUT
          • 請求資源 /group/member/{gid}/{uid}
            • gid 必填,群組ID
            • uid 必填,要修改用戶ID
          • 請求數據
          {
          "grade":"權限"
          }
          **群權限有4-1-用戶被邀請加入,但是還沒有經過受邀用戶驗證通過;0-用戶申請加入,但是還沒有被管理員驗證通過
          1-群組成員;2-管理員;3-群擁有者
          **這里的修改權限也可以理解為用戶確認接收邀請
          **或者管理員批準加入
          **或者設置管理員
          **或者轉讓群
          • 響應代碼
            • 200 添加成功
            • 403 沒有權限做成修改
            • 404 用戶不存在或者群組不存在或者要修改的成員不在群組中
            • 405 請求參數錯誤
            • 500 執行失敗
          • 響應內容
          • 成功
          NULL
          • 失敗:
          {"msg":"錯誤消息"}

          刪除群組成員信息

          • 請求方式 DELETE
          • 請求資源 /group/member/{gid}/{uid}
            • uid 必填,要刪除用戶ID
            • gid 必填,群組ID
          • 請求數據
            • NULL
          • 響應代碼
            • 200 刪除成功
            • 403 用戶沒有權限刪除別人或者群擁有者不能刪除自己
            • 404 用戶不存在或者群組不存在或者要修改的成員不在群里
            • 405 請求參數錯誤
            • 500 執行失敗
          • 響應內容
          • 成功:
          NULL
          • 失敗:
          {"msg":"錯誤消息"}

          頭像

          獲取頭像地址

          • 請求方式 GET
          • 請求資源 /avatar/{uid}?size=middle
            • uid: 必填,要獲取頭像地址的用戶 ID
            • size: 可選,要獲取的頭像尺寸,可以有以下幾種尺寸,默認為 middle
              • small: 小尺寸,48*48 像素
              • middle: 中等尺寸, 120*120 像素
              • big: 大尺寸,長邊為 200 像素
          • 請求數據: NULL
          • 響應代碼:
            • 200 獲取成功
            • 204 獲取成功,如果用戶沒有上傳頭像,返回系統默認頭像
            • 404 請求的用戶不存在
          • 響應內容:
          成功
          {"uid": "用戶ID", "url": "獲取到的頭像地址(http開頭的網址)"}
          失敗
          {"msg": "錯誤消息"}

          修改頭像

          • 請求方式 PUT
          • 請求資源 /avatar/{uid}
            • uid: 必填,要修改頭像的用戶 ID,修改頭像的時候,只需要傳遞大頭像的數據,中等頭像和小頭像會自動生成
          • 請求數據:
          {"data": "必填,經過 base64 編碼后的頭像圖片數據(最大200K)"}
          • 響應代碼:
            • 200 修改成功
            • 404 請求的用戶不存在
            • 413 發送的圖片數據超過了服務器允許的大小
            • 415 發送的圖片數據不合法
            • 500 服務器錯誤,詳見錯誤消息
          • 響應內容:
          成功
          NULL
          失敗
          {"msg": "錯誤消息"}

          刪除頭像/還原默認頭像

          • 請求方式: DELETE
          • 請求資源: /avatar/{uid}
            • uid: 必填,要刪除頭像的用戶ID
          • 請求數據: NULL
          • 響應代碼:
            • 200 刪除成功
            • 404 請求的用戶不存在
            • 500 刪除失敗
          • 響應內容:
          成功
          NULL
          失敗
          {"msg": "錯誤消息"}

          附加說明

          事件模板

          • 事件的模板目前沒有提供接口添加和修改,需要到 UAP Server 后臺添加及修改
          • 模板目前只支持賦值語法和循環語法

          拿以下數據為例:

          {
          "username":"user1",
          "array": {
          "0": {
          "item1": "item0-1",
          "item2": "item0-2"
          },
          "1": {
          "item1": "item1-1",
          "item2": "item1-2"
          }
          }

          賦值語法

          <h1>hello, {username}</h1>

          解析出的 html 為:

          <h1>hello, user1</h1>

          循環語法

          <ul>
          {foreach array as var}
          <li>{var[item1]}, {var[item2]} </li>
          {endforeach}
          </ul>

          解析出的 html 為:

          <ul>
          <li>item0-1, item0-2</li>
          <li>item101, item1-2</li>
          </ul>

          DEMO

          文檔版本歷史

          參考條目

          posted on 2009-11-06 21:05 becket_zheng 閱讀(1599) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 平遥县| 堆龙德庆县| 广州市| 河池市| 科尔| 威海市| 静乐县| 九龙坡区| 阳泉市| 宕昌县| 漠河县| 诸城市| 盐亭县| 赫章县| 侯马市| 呼和浩特市| 宜春市| 镇赉县| 克什克腾旗| 滕州市| 福清市| 翁牛特旗| 竹北市| 府谷县| 沙坪坝区| 霍山县| 苗栗市| 清丰县| 榆社县| 蓝山县| 武清区| 察隅县| 二连浩特市| 水富县| 涟源市| 新和县| 七台河市| 衡阳市| 林周县| 吉木萨尔县| 茶陵县|