Table of Contents

上一個主題

關于新浪云計算

下一個主題

文檔中心

本頁

API文檔?

簽名方法?

GET http://g.sae.sina.com.cn/(string: uri)?

訪問sinacloud的API接口。

Request Headers:
 
  • x-sae-accesskey – 應用的Accesskey
  • x-sae-timestamp – unix時間戳
  • Authorization – 本次請求的認證簽名。
Status Codes:

Example request:

GET /log/http/2015-06-05/1-access.log HTTP/1.1
Host: g.sae.sina.com.cn
Accept: text/plain
x-sae-accesskey: 0xdeadbeef
x-sae-timestamp: 1433495016
Authorization: SAEV1_HMAC_SHA256 VQdy0s/D4aEn6QXAexr0onGmz+QObDwkWcZCCKcxMws=

將所有x-sae-開頭的http header(小寫)按name排序后用冒號鏈接name和value,放在method、uri(包含query string,不要轉義)后以換行符分隔拼接為簽名原文字符串,再以Secretkey為密鑰用hmac sha256計算哈希值(二進制),再經base64編碼,前面加上”SAEV1_HMAC_SHA256 “,得到本次請求的認證簽名,即Authorization字段

import time
import base64
import hmac
import hashlib

TIMESTAMP = str(int(time.time()))
URI = '/log/http/2015-05-06/1-access.log?head/0/1'
# x-sae-開頭的header的name需要是小寫的
msgToSign = "\n".join(["GET", URI, "\n".join([(k + ":" + v) for k, v in sorted(HEADERS) if k.startswith('x-sae-')])])
signature = "SAEV1_HMAC_SHA256 " + base64.b64encode(hmac.new(SECRETKEY, msgToSign, hashlib.sha256).digest())

完整接口認證handler示例:https://github.com/sinacloud/sae-python-dev-guide/blob/master/examples/apibus/apibus_handler.py

注解

timestamp與服務器時間相差不得超過120秒。

接口列表?

實時日志?

GET /log/(string: service)/(string: date)/(string: ident).log?(string: fop)?

獲取應用的日志

本接口支持Range訪問返回部分內容,支持通過fop來在服務端直接處理日志內容。

Status Codes:

日志接口支持通過fop在服務端處理日志(grep,uniq,tail等)并直接返回處理后的結果。處理指令類似于linux shell命令。

[GET] /app/log?fop1|fop2|fop3|fopN

處理指令和指令之間通過豎線(|)來隔開,稱之為管道,上一條指令的輸出是下一條指令的輸入。命令名后的第一個字符為命令與參數的分隔符,如”grep/login.php”的分隔符為”/”。

fop操作指令列表:

  • head/OFFSET/LIMIT:獲取日志開頭行,OFFSET是起始行號,LIMIT是獲取的最大行數。
  • tail/OFFSET/LIMIT:獲取日志末尾行,OFFSET是起始行號(最后一行行號為1),LIMIT是獲取的最大行數。
  • grep/PATTERN/PLAIN:關鍵字匹配,PATTERN為關鍵字,支持部分正則,遵循lua正則語法,如 yq2[^6]+$ ,指定PLAIN為plain時禁用正則。
  • fields/SEPERATOR/COL1/COL2/…:取部分列。SEPERATOR指定列與列的分隔符,COL1等是要取的列的序號,從1開始。
  • uniq/SEPERATOR/COL1/COL2/…:去除相鄰重復的行,可以指定通過哪些列來排重,若無參數則比較整行,參數同fields指令。

service及ident列表:

service ident
http access、error、alert、debug、warning、notice
taskqueue error
cron error
mail access、error
rdc error、warning
storage access
push access
fetchurl access
caas stdout、stderr
afw block

注解

http的日志需要在ident前面加上版本號,比如版本1的access日志為1-access.log。

日志下載?

GET /log/(string: service)/(string: date)/(string: ident).tar.gz?(string: token)?

獲取日志下載路徑、下載日志,格式與實時日志雷同

下載時支持Range訪問返回部分內容

路徑右側參數不全時列出本級路徑下的資源,如請求路徑/log/http/2015-08-03:2015-08-05/返回應用3日至5日的http日志備份文件信息,使用其中的uri無需簽名即可下載文件,uri有效期5分鐘。 需要預先訪問/log/(string:service)/(string:date)/(string:ident)如/log/http/2015-08-03:2015-08-05/1-access獲取日志的備份文件列表,再根據列表中提供的鏈接下載,uri有效期5分鐘。其中結束日期不能包含當天,起始日期必須在30天以內。

Status Codes:

新浪財經實時報價?

GET /financehq/list=(string: stockcode)?

從新浪財經獲取股票的實時報價

輸出為csv格式,stockcode可以是半角逗號分隔的多個股票代碼

  • 滬深股:

    GET /financehq/list=sh000001,sz000001?

    Example response:

    上證指數,2897.2731,2927.1590,2833.0707,2911.1582,2832.5072,0,0,169255434,198547765495,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2016-06-13,15:01:55,00
    平安銀行,8.570,8.570,8.580,8.610,8.540,8.570,8.580,31517300,270236697.970,85260,8.570,348828,8.560,75620,8.550,490667,8.540,405600,8.530,19237,8.580,603684,8.590,960868,8.600,879238,8.610,724880,8.620,2016-06-17,15:05:03,00
    
    字段序號 內容
    1 證券簡稱
    2 今日開盤價
    3 昨日收盤價
    4 最近成交價
    5 最高成交價
    6 最低成交價
    7 買入價
    8 賣出價
    9 成交數量
    10 成交金額
    11 買數量一
    12 買價位一
    13 買數量二
    14 買價位二
    15 買數量三
    16 買價位三
    17 買數量四
    18 買價位四
    19 買數量五
    20 買價位五
    21 賣數量一
    22 賣價位一
    23 賣數量二
    24 賣價位二
    25 賣數量三
    26 賣價位三
    27 賣數量四
    28 賣價位四
    29 賣數量五
    30 賣價位五
    31 行情日期
    32 行情時間
    33 停牌狀態

    停牌狀態:

    狀態碼 狀態
    00 正常
    01 停牌一小時
    02 停牌一天
    03 連續停牌
    04 盤中停牌
    05 停牌半天
    07 暫停
    -1 無該記錄
    -2 未上市
    -3 退市

注解

指數成交量的單位是手,個股是股,需要特別注意!

statuscode 200:無錯誤
statuscode 400:客戶端參數錯誤
statuscode 403:認證錯誤
statuscode 500:服務端錯誤
orphan:

分詞服務?

POST /segment/urlclient.php?

從分詞服務獲取分詞的結果,返回的數據格式是JSON。

POST的參數列表:

參數 支持的值 說明
context 待分詞的語句 必填,最大10K。
word_tag 0或者1 必填,是否返回詞性
encoding GB18030、UTF-8、UCS-2 必填,傳入的文件編碼格式

輸入參數示例:

$post_data = array();
$post_data['context'] = 'hi12';
$post_data['word_tag'] = 0;
$post_data['encoding'] = 'UTF-8';

返回參數示例:

[
    {"word":"hi","word_tag":"95","index":"0"},
    {"word":"12","word_tag":"90","index":"1"}
]

PHP SDK示例:

分詞服務PHP SDK

詞性列表

代碼 詞性說明
0 不知道
10 形容詞
20 區別詞
30 連詞
31 體詞連接
32 分句連接
40 副詞
41 副詞(“不”)
42 副詞(“沒”)
50 嘆詞
60 方位詞
61 方位短語(處所詞+方位詞)
62 方位短語(名詞+方位詞“地上”)
63 方位短語(動詞+方位詞“取前”)
64 方位短語(動詞+方位詞“取前”)
70 前接成分
71 數詞前綴(“數”—數十)
72 時間詞前綴(“公元”“明永樂”)
73 姓氏
74 姓氏
80 后接成分
81 數詞后綴(“來”–,十來個)
82 時間詞后綴(“初”“末”“時”)
83 名詞后綴(“們”)
84 處所詞后綴(“苑”“里”)
85 狀態詞后綴(“然”)
86 狀態詞后綴(“然”)
87 狀態詞后綴(“然”)
90 數詞
95 名詞
96 人名(“毛澤東”)
97 機構團體(“團”的聲母為t,名詞代碼n和t并在一起。“公司”)
99 機構團體名(“北大”)
100 其他專名(“專”的聲母的第1個字母為z,名詞代碼n和z并在一起。)
101 名處詞
102 地名(名處詞專指:“中國”)
103 n-m,數詞開頭的名詞(三個學生)
104 n-rb,以區別詞/代詞開頭的名詞(該學校,該生)
107 擬聲詞
108 介詞
110 量詞
111 動量詞(“趟”“遍”)
112 時間量詞(“年”“月”“期”)
113 貨幣量詞(“元”“美元”“英鎊”)
120 代詞
121 副詞性代詞(“怎么”)
122 數詞性代詞(“多少”)
123 名詞性代詞(“什么”“誰”)
124 處所詞性代詞(“哪兒”)
125 時間詞性代詞(“何時”)
126 謂詞性代詞(“怎么樣”)
127 區別詞性代詞(“某”“每”)
130 處所詞(取英語space的第1個字母。“東部”)
131 處所詞(取英語space的第1個字母。“東部”)
132 時間詞(取英語time的第1個字母)
140 助詞
141 定語助詞(“的”)
142 狀語助詞(“地”)
143 補語助詞(“得”)
144 謂詞后助詞(“了、著、過”)
145 體詞后助詞(“等、等等”)
146 助詞(“所”)
150 標點符號
151 頓號(“、”)
152 句號(“。”)
153 分句尾標點(“,”“;”)
154 搭配型標點左部
155 搭配型標點右部(“》”“]”“)”)
156 中綴型符號
160 語氣詞(取漢字“語”的聲母。“嗎”“吧”“啦”)
170 及物動詞(取英語動詞verb的第一個字母。)
171 不及物謂詞(謂賓結構“剃頭”)
172 動補結構動詞(“取出”“放到”)
173 動詞“是”
174 動詞“有”
175 趨向動詞(“來”“去”“進來”)
176 助動詞(“應該”“能夠”)
180 狀態詞(不及物動詞,v-o、sp之外的不及物動詞)
190 語素字
191 名詞語素(“琥”)
192 動詞語素(“酹”)
193 處所詞語素(“中”“日”“美”)
194 時間詞語素(“唐”“宋”“元”)
195 狀態詞語素(“偉”“芳”)
196 狀態詞語素(“偉”“芳”)
200 不及物謂詞(主謂結構“腰酸”“頭疼”)
201 數量短語(“叁個”)
202 代量短語(“這個”)
210 副形詞(直接作狀語的形容詞)
211 名形詞(具有名詞功能的形容詞)
212 副動詞(直接作狀語的動詞)
213 名動詞(指具有名詞功能的動詞)
230 空格
orphan:

channel服務(WebSocket)?

POST /channel/v1/create_channel?

創建一個WebSocket連接,返回的數據格式是JSON,其中包含連接的地址,請注意這個連接地址只能接收下行信息,上行需要通過下述的send_message接口發送。

POST的參數列表:

參數 支持的值 說明
client_id 通道的標示,數字字符組合 唯一
duration 通道的過期時間 單位是秒,最大3600

輸入參數示例:

$post_data = array();
$post_data['client_id'] = 'client-1';
$post_data['duration'] = 3600;

返回參數示例:

{"data":"ws://channel.sinaapp.com/com/48HcoN529Ok9OSdROkrJPeN1t0fAVUz_FV15mnJab4X5CxMqBop-Z_lfSQUcTA8x93frndyBiJGqcCBPi2yEuw"}

返回的參數是一個數組,data字段中包含了websocket的連接地址,如果需要使用 HTTPS ,請修改ws為wss。

POST /channel/v1/send_message?

往一個WebSocket連接中推送消息。

POST的參數列表:

參數 支持的值 說明
client_id 通道的標示,數字字符組合 和創建時一致,例如client-1
message 需要推送的消息 不能為空,最大可以發送4k的消息
async 0或者1 是否異步發送,如果設置為1,服務端會立刻返回(始終返回成功),默認為0

輸入參數示例:

$post_data = array();
$post_data['client_id'] = 'client-1';
$post_data['message'] = '消息發送';
$post_data['async'] = 0;

返回參數示例:

{"data":1}

返回的參數是一個數組,data字段標示是否發送成功,1表示成功。

Channel服務PHP示例程序代碼

河南22选5开奖
  • <em id="xpjve"><ol id="xpjve"></ol></em>

          1. <em id="xpjve"><ol id="xpjve"></ol></em>