JavascriptCallbackBehaviorAttribute 類別

定義

一種合約行為,允許將 URL 查詢字串參數名稱設定為除了預設的 "callback" 以外的名稱。

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 是一種啟用 Web 瀏覽器跨網站指令碼支援的機制。 這需要傳送具有回呼函式名稱的要求,以 URL 查詢字串參數值的方式提供該名稱。 服務會傳回回應,將一般的 JSON 裝載包裝在對於提供回呼函式的呼叫中,就像一行可執行程式碼一樣。

以下是用來呼叫服務的 URL 範例:http://baseAddress/Service/RESTService?callback=functionName。 叫用服務時,服務會產生下列 JSON 回應。

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

JavascriptCallbackBehaviorAttribute 可讓開發人員指定要解譯為回呼參數之 URL 查詢字串參數的名稱。 預設值為「回呼」, (不區分大小寫) 。

下列範例會示範這個屬性如何套用到服務合約。

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

只有當此屬性標示與 搭配 WebHttpBinding 使用的服務合約類型,且 CrossDomainScriptAccessEnabled 系結的 屬性設定為 true 時,才會套用這個屬性。

建構函式

JavascriptCallbackBehaviorAttribute()

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

屬性

TypeId

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

(繼承來源 Attribute)
UrlParameterName

取得或設定用於跨網域指令碼存取的 URL 查詢字串參數名稱。

方法

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) 方法的實作。

明確介面實作

_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)

適用於