共用方式為


JavascriptCallbackBehaviorAttribute 類別

定義

合約行為,可讓您將URL查詢字串參數名稱設定為預設「回呼」以外的名稱。

public ref class JavascriptCallbackBehaviorAttribute sealed : Attribute, System::ServiceModel::Description::IContractBehavior
[System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=false)]
public sealed class JavascriptCallbackBehaviorAttribute : Attribute, System.ServiceModel.Description.IContractBehavior
[<System.AttributeUsage(System.AttributeTargets.Class, AllowMultiple=false)>]
type JavascriptCallbackBehaviorAttribute = class
    inherit Attribute
    interface IContractBehavior
Public NotInheritable Class JavascriptCallbackBehaviorAttribute
Inherits Attribute
Implements IContractBehavior
繼承
JavascriptCallbackBehaviorAttribute
屬性
實作

備註

JSONP 是一種用於在網頁瀏覽器中實現跨站腳本支援的機制。 它涉及發送一個請求,並以回調函式名稱作為 URL 查詢字串參數值。 服務回傳回應時,會將通常的 JSON 有效載荷包裹在呼叫所提供的回調函式中,就像是一行可執行程式碼一樣。

以下是一個用於呼叫服務的 URL 範例: http://baseAddress/Service/RESTService?callback=functionName。 當被呼叫時,服務會回應以下 JSON。

functionName({ "root":"Something});

JavascriptCallbackBehaviorAttribute 讓開發者可以指定 URL 查詢字串參數的名稱,將其解讀為回調參數。 預設值為「callback」(不區分大小寫)。

以下範例展示了此屬性如何應用於服務合約。

[ServiceContract]
[JavascriptCallbackBehavior]
public class Service1
{
    [OperationContract]
    [WebGet(ResponseFormat=WebMessageFormat.Json)]
    public string GetData()
    {
         // ...
    }
}

此屬性僅在標記使用服務WebHttpBindingCrossDomainScriptAccessEnabled合約類型且綁定屬性設為 true時適用。

建構函式

名稱 Description
JavascriptCallbackBehaviorAttribute()

初始化 JavascriptCallbackBehaviorAttribute 類別的新執行個體。

屬性

名稱 Description
TypeId

在衍生類別中實作時,取得這個 Attribute的唯一標識碼。

(繼承來源 Attribute)
UrlParameterName

取得或設定 URL 查詢字串參數名稱,用於跨域腳本存取。

方法

名稱 Description
AddBindingParameters(ContractDescription, ServiceEndpoint, BindingParameterCollection)

這是該方法的 AddBindingParameters(ContractDescription, ServiceEndpoint, BindingParameterCollection) 實作。

ApplyClientBehavior(ContractDescription, ServiceEndpoint, ClientRuntime)

這是該方法的 ApplyClientBehavior(ContractDescription, ServiceEndpoint, ClientRuntime) 實作。

ApplyDispatchBehavior(ContractDescription, ServiceEndpoint, DispatchRuntime)

這是該方法的 ApplyDispatchBehavior(ContractDescription, ServiceEndpoint, DispatchRuntime) 實作。

Equals(Object)

傳回值,這個值表示這個實例是否等於指定的物件。

(繼承來源 Attribute)
GetHashCode()

傳回這個實例的哈希碼。

(繼承來源 Attribute)
GetType()

取得目前實例的 Type

(繼承來源 Object)
IsDefaultAttribute()

在衍生類別中覆寫時,指出這個實例的值是否為衍生類別的預設值。

(繼承來源 Attribute)
Match(Object)

在衍生類別中覆寫時,傳回值,指出這個實例是否等於指定的物件。

(繼承來源 Attribute)
MemberwiseClone()

建立目前 Object的淺層複本。

(繼承來源 Object)
ToString()

傳回表示目前 物件的字串。

(繼承來源 Object)
Validate(ContractDescription, ServiceEndpoint)

這是該方法的 Validate(ContractDescription, ServiceEndpoint) 實作。

明確介面實作

名稱 Description
_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

將一組名稱對應至一組對應的分派識別項 (Dispatch Identifier)。

(繼承來源 Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

擷取 物件的型別資訊,可用來取得介面的類型資訊。

(繼承來源 Attribute)
_Attribute.GetTypeInfoCount(UInt32)

擷取物件提供的類型資訊介面數目 (0 或 1)。

(繼承來源 Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

提供物件所公開屬性和方法的存取權。

(繼承來源 Attribute)

適用於