日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

UpdateForwardingRules - 更新轉(zhuǎn)發(fā)規(guī)則

更新時(shí)間:

調(diào)用UpdateForwardingRules接口更新轉(zhuǎn)發(fā)策略。

接口說明

  • UpdateForwardingRules 接口屬于異步接口,即系統(tǒng)會(huì)先返回一個(gè)請(qǐng)求 ID,但轉(zhuǎn)發(fā)策略并未修改完成,系統(tǒng)后臺(tái)的修改任務(wù)仍在進(jìn)行。您可以調(diào)用 ListForwardingRules 查詢轉(zhuǎn)發(fā)策略的狀態(tài):
    • 當(dāng)轉(zhuǎn)發(fā)策略處于 configuring 狀態(tài)時(shí),表示轉(zhuǎn)發(fā)策略正在修改中,在該狀態(tài)下,您只能執(zhí)行查詢操作,不能執(zhí)行其他操作。
    • 當(dāng)轉(zhuǎn)發(fā)策略處于 active 狀態(tài)時(shí),表示轉(zhuǎn)發(fā)策略修改完成。
  • UpdateForwardingRules 接口不支持在同一個(gè)全球加速實(shí)例內(nèi)并發(fā)修改轉(zhuǎn)發(fā)策略。

調(diào)試

您可以在OpenAPI Explorer中直接運(yùn)行該接口,免去您計(jì)算簽名的困擾。運(yùn)行成功后,OpenAPI Explorer可以自動(dòng)生成SDK代碼示例。

授權(quán)信息

下表是API對(duì)應(yīng)的授權(quán)信息,可以在RAM權(quán)限策略語句的Action元素中使用,用來給RAM用戶或RAM角色授予調(diào)用此API的權(quán)限。具體說明如下:

  • 操作:是指具體的權(quán)限點(diǎn)。
  • 訪問級(jí)別:是指每個(gè)操作的訪問級(jí)別,取值為寫入(Write)、讀?。≧ead)或列出(List)。
  • 資源類型:是指操作中支持授權(quán)的資源類型。具體說明如下:
    • 對(duì)于必選的資源類型,用背景高亮的方式表示。
    • 對(duì)于不支持資源級(jí)授權(quán)的操作,用全部資源表示。
  • 條件關(guān)鍵字:是指云產(chǎn)品自身定義的條件關(guān)鍵字。
  • 關(guān)聯(lián)操作:是指成功執(zhí)行操作所需要的其他權(quán)限。操作者必須同時(shí)具備關(guān)聯(lián)操作的權(quán)限,操作才能成功。
操作訪問級(jí)別資源類型條件關(guān)鍵字關(guān)聯(lián)操作
ga:UpdateForwardingRulesupdate
*Listener
acs:ga:{#regionId}:{#accountId}:listener/{#listenerId}

請(qǐng)求參數(shù)

名稱類型必填描述示例值
RegionIdstring

全球加速實(shí)例所屬的地域 ID,僅取值:cn-hangzhou。

cn-hangzhou
ClientTokenstring

客戶端 Token,用于保證請(qǐng)求的冪等性。

從您的客戶端生成一個(gè)參數(shù)值,確保不同請(qǐng)求間該參數(shù)值唯一。ClientToken 只支持 ASCII 字符。

說明 若您未指定,則系統(tǒng)自動(dòng)使用 API 請(qǐng)求的 RequestId 作為 ClientToken 標(biāo)識(shí)。每次 API 請(qǐng)求的 RequestId 不一樣。
02fb3da4****
AcceleratorIdstring

全球加速實(shí)例 ID。

ga-bp17frjjh0udz4q****
ListenerIdstring

監(jiān)聽 ID。

lsr-bp1s0vzbi5bxlx5****
ForwardingRulesarray<object>

轉(zhuǎn)發(fā)策略配置信息列表。

test
object

轉(zhuǎn)發(fā)策略配置信息列表。

Priorityinteger

轉(zhuǎn)發(fā)策略優(yōu)先級(jí)。取值范圍:1~10000。值越小表示優(yōu)先級(jí)越高。

1000
RuleConditionsarray<object>

轉(zhuǎn)發(fā)條件列表。

object

轉(zhuǎn)發(fā)條件列表。

RuleConditionTypestring

轉(zhuǎn)發(fā)條件類型。取值:

  • Host:域名。
  • Path:路徑。
  • RequestHeader:HTTP 標(biāo)頭。
  • Query:查詢字符串。
  • Method:HTTP 請(qǐng)求方法。
  • Cookie:Cookie。
  • SourceIP:源 IP。
Host
RuleConditionValuestring

轉(zhuǎn)發(fā)條件類型對(duì)應(yīng)的值。 根據(jù) RuleConditionType 傳入不同的 JSON 字符串值。

  • 當(dāng) RuleConditionType 取值為 Host 時(shí),該參數(shù)為域名條件配置信息。一個(gè)轉(zhuǎn)發(fā)策略內(nèi)只允許創(chuàng)建一個(gè)域名類型轉(zhuǎn)發(fā)規(guī)則,該轉(zhuǎn)發(fā)規(guī)則內(nèi)支持配置多個(gè)域名,多個(gè)域名間為“或”關(guān)系。域名長(zhǎng)度為 3~128 個(gè)字符,允許包含字母、數(shù)字、短劃線(-)和半角句號(hào)(.),支持使用星號(hào)(*)和半角問號(hào)(?)作為通配符。取值樣例為["www.example.com", "www.aliyun.com"]。

  • 當(dāng) RuleConditionType 取值為 Path 時(shí),該參數(shù)為路徑條件配置信息。一個(gè)轉(zhuǎn)發(fā)策略內(nèi)允許創(chuàng)建多個(gè)路徑類型轉(zhuǎn)發(fā)規(guī)則,多個(gè)路徑類型轉(zhuǎn)發(fā)規(guī)則間為”或“關(guān)系,一個(gè)轉(zhuǎn)發(fā)路徑類型規(guī)則內(nèi)支持配置多個(gè)路徑,多個(gè)路徑間為“或”關(guān)系。路徑長(zhǎng)度為 1~128 個(gè)字符,必須以正斜線(/)開頭,只允許包含字母、數(shù)字、美元符號(hào)($)、短劃線(-)、下劃線(_)、半角句號(hào)(.)、加號(hào)(+)、正斜線(/)、and(&)、波浪線(~)、at(@)、半角冒號(hào)(:)、撇號(hào)('),支持使用星號(hào)(*)和半角問號(hào)(?)作為通配符。取值樣例為["/a", "/b/"]。

  • 當(dāng) RuleConditionType 取值為 RequestHeader 時(shí),該參數(shù)為 HTTP 標(biāo)頭字段條件配置信息,由鍵(Key)和值(Value)組成。同一個(gè)轉(zhuǎn)發(fā)規(guī)則條件內(nèi)標(biāo)頭字段值不能重復(fù)。取值樣例為[{"header1":["value1","value2"]}]。

    • Key:HTTP 標(biāo)頭的鍵值長(zhǎng)度為 1~40 個(gè)字符,支持字母、數(shù)字、短劃線(-)和下劃線(_)。

    • Value:HTTP 標(biāo)頭的值長(zhǎng)度為 1~128 個(gè)字符,支持 ASCII 碼值ch >= 32 && ch < 127范圍內(nèi)可打印字符,開頭和結(jié)尾不能為空格。

  • 當(dāng) RuleConditionType 取值為 Query 時(shí),該參數(shù)為查詢字符串條件配置信息,由鍵(Key)和值(Value)組成。取值樣例為[{"query1":["value1"]}, {"query2":["value2"]}]。

    • Key:HTTP 標(biāo)頭的鍵值長(zhǎng)度為 1~100 個(gè)字符,支持 ASCII 碼值ch >= 32 && ch < 127范圍內(nèi)可打印字符,如果是字母必須為小寫字母,不支持空格和[]{}<>\;/?:@&=+,$%|"^~。

    • Value:HTTP 標(biāo)頭的值長(zhǎng)度為 1~128 個(gè)字符,支持 ASCII 碼值ch >= 32 && ch < 127范圍內(nèi)可打印字符,如果是字母必須為小寫字母,不支持空格和[]{}<>\;/?:@&=+,$%|"^~

  • 當(dāng) RuleConditionType 取值為 Method 時(shí),該參數(shù)為請(qǐng)求方法配置信息。取值范圍為 HEAD、GET、POST、OPTIONSPUT、PATCHDELETE。取值樣例為["GET", "OPTIONS", "POST"]。

  • 當(dāng) RuleConditionType 取值為 Cookie 時(shí),該參數(shù)為 Cookie 配置信息,由鍵(Key)和值(Value)組成。取值樣例為[{"cookie1":["value1"]}, {"cookie2":["value2"]}]

    • Key:Cookie 的鍵值長(zhǎng)度為 1~100 個(gè)字符,支持 ASCII 碼值ch >= 32 && ch < 127范圍內(nèi)可打印字符,如果是字母必須為小寫字母,不支持空格和#[]{}\|<>&。

    • Value:Cookie 的值長(zhǎng)度為 1~128 個(gè)字符,支持 ASCII 碼值ch >= 32 && ch < 127范圍內(nèi)可打印字符,如果是字母必須為小寫字母,不支持空格和#[]{}\|<>&

  • 當(dāng) RuleConditionType 取值為 SourceIP 時(shí),該參數(shù)為源 IP 配置信息,支持 IP 地址,例如 1.1.XX.XX/32,或 IP 地址段,例如 2.2.XX.XX/24。一個(gè)轉(zhuǎn)發(fā)規(guī)則只允許創(chuàng)建一個(gè)源 IP 規(guī)則,該轉(zhuǎn)發(fā)規(guī)則內(nèi)支持配置多個(gè)源 IP,多個(gè) IP 之間為“或”關(guān)系。取值樣例為["1.1.XX.XX/32", "2.2.XX.XX/24"]。

["www.example.com", "www.aliyun.com"]
PathConfigobject

路徑配置信息。

說明 不推薦使用該參數(shù),建議直接使用 RuleConditionTypeRuleConditionValue 配置轉(zhuǎn)發(fā)條件。
Valuesarray

路徑配置信息。

說明 不推薦使用該參數(shù),建議直接使用 RuleConditionTypeRuleConditionValue 配置轉(zhuǎn)發(fā)條件。
string

路徑配置。

路徑長(zhǎng)度為 1~128 個(gè)字符,必須以正斜線(/)開頭,只允許包含字母、數(shù)字、美元符號(hào)($)、短劃線(-)、下劃線(_)、半角句號(hào)(.)、加號(hào)(+)、正斜線(/)、and(&)、波浪線(~)、at(@)、半角冒號(hào)(:)、半角單引號(hào)('),支持使用星號(hào)(*)和半角問號(hào)(?)作為通配符。

說明 不推薦使用該參數(shù),建議直接使用 RuleConditionTypeRuleConditionValue 配置轉(zhuǎn)發(fā)條件。
/test
HostConfigobject

域名配置信息。

說明 不推薦使用該參數(shù),建議直接使用 RuleConditionTypeRuleConditionValue 配置轉(zhuǎn)發(fā)條件。
Valuesarray

域名配置信息。

說明 不推薦使用該參數(shù),建議直接使用 RuleConditionTypeRuleConditionValue 配置轉(zhuǎn)發(fā)條件。
string

域名配置。

域名長(zhǎng)度為 3~128 個(gè)字符,允許包含字母、數(shù)字、短劃線(-)和半角句號(hào)(.),支持使用星號(hào)(*)和半角問號(hào)(?)作為通配符。

example.com
RuleActionsarray<object>

轉(zhuǎn)發(fā)動(dòng)作。

object

轉(zhuǎn)發(fā)動(dòng)作。

Orderinteger

轉(zhuǎn)發(fā)優(yōu)先級(jí)。

說明 當(dāng)前無實(shí)際意義,無需配置。
20
RuleActionTypestring

轉(zhuǎn)發(fā)動(dòng)作類型。取值:

  • ForwardGroup:轉(zhuǎn)發(fā)。
  • Redirect:重定向。
  • FixResponse:返回固定響應(yīng)。
  • Rewrite:重寫。
  • AddHeader:寫入頭字段。
  • RemoveHeader:刪除頭字段。
  • Drop:丟棄。
ForwardGroup
RuleActionValuestring

轉(zhuǎn)發(fā)動(dòng)作類型對(duì)應(yīng)的值。

根據(jù) RuleActionType 傳入不同的 JSON 字符串值。

一個(gè)轉(zhuǎn)發(fā)規(guī)則最多只能有一條 ForwardGroup、Redirect、FixResponse 類型的轉(zhuǎn)發(fā)動(dòng)作。Rewrite、AddHeader、RemoveHeader 類型的轉(zhuǎn)發(fā)動(dòng)作順序必須在 ForwardGroup 類型的轉(zhuǎn)發(fā)動(dòng)作之前。

  • 當(dāng) RuleActionType 取值為 ForwardGroup 時(shí),該參數(shù)為虛擬終端節(jié)點(diǎn)組信息。僅支持轉(zhuǎn)發(fā)至一個(gè)虛擬終端節(jié)點(diǎn)組。取值樣例為{"type":"endpointgroup", "value":"epg-bp1enpdcrqhl78g6r****"},其中:

    • type:取值為endpointgroup。

    • value:目標(biāo)虛擬終端節(jié)點(diǎn)組 ID。

  • 當(dāng) RuleActionType 取值為 Redirect 時(shí),該參數(shù)為重定向配置信息。Redirect 類型的轉(zhuǎn)發(fā)動(dòng)作中protocol、domainportpath、query不能全部為空或者默認(rèn)值。取值樣例為{"protocol":"HTTP", "domain":"www.example.com", "port":"80", "path":"/a","query":"value1", "code":"301" },其中:

    • protocol:要跳轉(zhuǎn)的協(xié)議。取值范圍為${protocol}(默認(rèn)值)、HTTPHTTPS。

    • domain:要跳轉(zhuǎn)的域名。默認(rèn)值為${host}(默認(rèn)值),您還可以輸入其他域名信息,域名長(zhǎng)度為 3~128 個(gè)字符,只允許包含小寫字母、數(shù)字和特殊字符.-?=~_-+/^*!$&|()[]

    • port:要跳轉(zhuǎn)的端口。默認(rèn)值為${port},您還可以輸入端口號(hào),端口取值范圍為 1~63335。

    • path:要跳轉(zhuǎn)的路徑。默認(rèn)值為${path},路徑長(zhǎng)度限制為 1~128 個(gè)字符。正則表達(dá)式類型的路徑,必須以波浪線(~)開頭,支持的大小寫字母、數(shù)字和特殊字符.-_/=?~^*$:()[]+|;非正則表達(dá)式類型的路徑,必須以正斜線(/) 開頭,支持大小寫字母、數(shù)字和特殊字符.-_/=?:。

    • query:要跳轉(zhuǎn)的查詢字符串。默認(rèn)值為${query},您還可以輸入其他查詢字符串信息,查詢字符串長(zhǎng)度為 1~128 個(gè)字符,支持 ASCII 碼值ch >= 32 && ch < 127范圍內(nèi)可打印字符,如果是字母必須為小寫字母,不支持空格和特殊字符[]{}<>\#|&。

    • code:跳轉(zhuǎn)方式。支持301302、303、307308。

  • 當(dāng) RuleActionType 取值為 FixResponse 時(shí),該參數(shù)為返回固定響應(yīng)配置信息。取值樣例為{"code":"200", "type":"text/plain", "content":"dssacav" },其中:

    • code:響應(yīng)狀態(tài)碼。僅支持2xx4xx5xx數(shù)字型字符串,x為任意數(shù)字。

    • type:響應(yīng)正文類型。僅支持text/plain, text/css, text/html, application/javascript, application/json。

    • content:響應(yīng)正文。響應(yīng)正文長(zhǎng)度不能超過 1000 個(gè)字符,不支持中文字符。

  • 當(dāng) RuleActionType 取值為 AddHeader 時(shí),該參數(shù)為插入 HTTP 標(biāo)頭字段配置信息。轉(zhuǎn)發(fā)規(guī)則中存在 AddHeader 類型的轉(zhuǎn)發(fā)動(dòng)作,必須同時(shí)配置一條 ForwardGroup 類型的轉(zhuǎn)發(fā)動(dòng)作。取值樣例為[{"name":"header1","type":"userdefined", "value":"value"}],其中:

    • name:HTTP 標(biāo)頭字段名稱。名稱長(zhǎng)度為 1~40 字符,支持大小寫字母、數(shù)字、短劃線(-)和下劃線(_)。AddHeader 中的 HTTP 標(biāo)頭字段名稱不能重復(fù),也不能和 RemoveHeader 中的 HTTP 標(biāo)頭字段名稱重復(fù)。

    • type:HTTP 標(biāo)頭字段內(nèi)容類型。取值范圍為user-defined(用戶指定)、ref(引用)、system-defined(系統(tǒng)定義)。

    • value:HTTP 標(biāo)頭字段內(nèi)容,內(nèi)容不能為空。typeuser-defined(用戶指定)時(shí),長(zhǎng)度為 1~128 個(gè)字符,支持 ASCII 碼值ch >= 32 && ch < 127范圍內(nèi)的可打印字符,支持大小寫字母、數(shù)字、短劃線(-)和下劃線(),開頭和結(jié)尾不能為空格;typeref(引用)時(shí),長(zhǎng)度為 1~128 個(gè)字符,支持大小寫字母、數(shù)字、短劃線(-)和下劃線(),開頭和結(jié)尾不能為空格;typesystem-defined(系統(tǒng)定義)時(shí),僅支持取值為ClientSrcIp

  • 當(dāng) RuleActionType 取值為 RemoveHeader 時(shí),該參數(shù)為刪除 HTTP 標(biāo)頭字段信息。轉(zhuǎn)發(fā)規(guī)則中存在 RemoveHeader 類型的轉(zhuǎn)發(fā)動(dòng)作,必須同時(shí)配置一條 ForwardGroup 類型的轉(zhuǎn)發(fā)動(dòng)作。長(zhǎng)度為 1~40 字符,支持大小寫字母、數(shù)字、短劃線(-)和下劃線(_)。取值樣例為["header1"]

  • 當(dāng) RuleActionType 取值為 Rewrite 時(shí),該參數(shù)為重寫配置信息。轉(zhuǎn)發(fā)規(guī)則中存在 Rewrite 類型的轉(zhuǎn)發(fā)動(dòng)作,必須同時(shí)配置一條 ForwardGroup 類型的轉(zhuǎn)發(fā)動(dòng)作。取值樣例為{"domain":"value1", "path":"value2", "query":"value3"},其中:

    • domain:要跳轉(zhuǎn)的域名。默認(rèn)值為${host},您還可以輸入其他域名信息,域名長(zhǎng)度為 3~128 個(gè)字符,只允許包含小寫字母、數(shù)字和特殊字符.-?=~_-+/^*!$&|()[]

    • path:要跳轉(zhuǎn)的路徑。默認(rèn)值為${path},路徑長(zhǎng)度限制為 1~128 個(gè)字符。正則表達(dá)式類型的路徑,必須以波浪線(~)開頭,支持的大小寫字母、數(shù)字和特殊字符.-_/=?~^*$:()[]+|;非正則表達(dá)式類型的路徑,必須以正斜線(/) 開頭,支持大小寫字母、數(shù)字和特殊字符.-_/=?:。

    • query:要跳轉(zhuǎn)的查詢字符串。默認(rèn)值為${query},您還可以輸入其他查詢字符串信息,查詢字符串長(zhǎng)度為 1~128 個(gè)字符,支持 ASCII 碼值ch >= 32 && ch < 127范圍內(nèi)可打印字符,如果是字母必須為小寫字母,不支持空格和特殊字符[]{}<>\#|&。

  • 當(dāng) RuleActionType 取值為 Drop 時(shí),該參數(shù)無需填寫。

[{"type":"endpointgroup", "value":"epg-bp1enpdcrqhl78g6r****"}]
ForwardGroupConfigobject

轉(zhuǎn)發(fā)配置。

說明 不推薦使用該參數(shù),建議直接使用 RuleActionTypeRuleActionValue 配置轉(zhuǎn)發(fā)動(dòng)作。
ServerGroupTuplesarray<object>

終端節(jié)點(diǎn)組配置。

說明 不推薦使用該參數(shù),建議直接使用 RuleActionTypeRuleActionValue 配置轉(zhuǎn)發(fā)動(dòng)作。
object

終端節(jié)點(diǎn)組配置。

說明 不推薦使用該參數(shù),建議直接使用 RuleActionTypeRuleActionValue 配置轉(zhuǎn)發(fā)動(dòng)作。
EndpointGroupIdstring

終端節(jié)點(diǎn)組 ID。

說明 不推薦使用該參數(shù),建議直接使用 RuleActionTypeRuleActionValue 配置轉(zhuǎn)發(fā)動(dòng)作。
epg-bp1ieei9664r5nv****
ForwardingRuleIdstring

轉(zhuǎn)發(fā)策略 ID。

frule-bp1dii16gu9qdvb34****
ForwardingRuleNamestring

轉(zhuǎn)發(fā)策略名稱。

名稱長(zhǎng)度為 2~128 個(gè)英文或中文字符,必須以大小寫字母或中文開頭,可包含數(shù)字、半角句號(hào)(.)、下劃線(_)和短劃線(-)。

test
RuleDirectionstring

規(guī)則生效方向。無需配置。

目前默認(rèn)為 request,表示請(qǐng)求方向生效。

request

返回參數(shù)

名稱類型描述示例值
object

返回信息列表。

ForwardingRulesarray<object>

轉(zhuǎn)發(fā)策略信息。

ForwardingRulesobject

轉(zhuǎn)發(fā)策略信息。

ForwardingRuleIdstring

轉(zhuǎn)發(fā)策略 ID。

frule-bp1dii16gu9qdvb34****
RequestIdstring

請(qǐng)求 ID。

64ADAB1E-0B7F-4FD8-A404-3BECC0E9CCFF

示例

正常返回示例

JSON格式

{
  "ForwardingRules": [
    {
      "ForwardingRuleId": "frule-bp1dii16gu9qdvb34****"
    }
  ],
  "RequestId": "64ADAB1E-0B7F-4FD8-A404-3BECC0E9CCFF"
}

錯(cuò)誤碼

HTTP status code錯(cuò)誤碼錯(cuò)誤信息描述
400NotExist.ListenerThe listener does not exist.監(jiān)聽器不存在
400NotActive.ListenerThe state of the listener is not active.監(jiān)聽器狀態(tài)非穩(wěn)態(tài)
400NotExist.AcceleratorThe accelerated instance does not exist.加速實(shí)例不存在。
400StateError.AcceleratorThe state of the accelerated instance is invalid.加速實(shí)例狀態(tài)非法。
400NotExist.BasicBandwidthPackageYou must specify the basic bandwidth package.缺少基礎(chǔ)帶寬包
400QuotaExceeded.EndPointThe maximum number of endpoints is exceeded.終端節(jié)點(diǎn)達(dá)到Quota限制
400Exist.EndpointGroupThe endpoint group already exists.終端節(jié)點(diǎn)組已存在
400NoPermission.VpcEndpointYou are not authorized to perform the operation.用戶沒有創(chuàng)建服務(wù)關(guān)聯(lián)角色的權(quán)限,請(qǐng)聯(lián)系主賬號(hào)或權(quán)限管理員授權(quán)當(dāng)前用戶AliyunGlobalAccelerationFullAccess或者創(chuàng)建服務(wù)關(guān)聯(lián)角色的自定義權(quán)限。自定義權(quán)限策略的相關(guān)信息包含以下內(nèi)容:ServiceName為vpcendpoint.ga.aliyuncs.com,服務(wù)關(guān)聯(lián)角色名稱為AliyunServiceRoleForGaVpcEndpoint,執(zhí)行該操作所需的用戶權(quán)限為ram:CreateServiceLinkedRole。
400SystemBusySystem busy, please try again later.系統(tǒng)繁忙,處理超時(shí),請(qǐng)稍后重試。若重試后仍出現(xiàn),請(qǐng)?zhí)峁翁幚怼?
400RepeatPathAndHost.ForwardingRuleThe path and host %s are duplicated.路徑和域名重復(fù)
400QuotaExceeded.RuleConditionConfigThe number of paths and hosts exceeds the limit.路徑和域名數(shù)量超過限制
400NotExist.BusinessRegionThe business region does not exist.業(yè)務(wù)region并不存在
400NotExist.ForwardingRuleThe forwarding rule %s does not exist.轉(zhuǎn)發(fā)規(guī)則 %s 不存在

訪問錯(cuò)誤中心查看更多錯(cuò)誤碼。

變更歷史

變更時(shí)間變更內(nèi)容概要操作
2023-10-18OpenAPI 錯(cuò)誤碼發(fā)生變更查看變更詳情