This documentation is archived and is not being maintained.

ScriptMethodAttribute.UseHttpGet Property

Gets or sets a value that indicates whether to invoke the method by using HTTP GET.

Namespace:  System.Web.Script.Services
Assembly:  System.Web.Extensions (in System.Web.Extensions.dll)

public bool UseHttpGet { get; set; }

Property Value

Type: System.Boolean
true if the method is invoked by using the HTTP GET command; false if the method is invoked by using the HTTP POST command. The default is false.

You cannot override this property from ECMAScript (JavaScript) on the client. If this property is set to true, invoking the method from script will always use HTTP GET.

When this property is set to true, the client proxy code uses HTTP GET to call the Web service. Each input parameter for the method appears as a query parameter in the URL that is used to invoke the Web method. The parameter value is obtained through JavaScript Object Notation (JSON) serialization and URL encoding of the parameter value.

The use of HTTP GET for invoking the Web service method follows the same guidelines for any other Web interaction. HTTP GET should be used only for operations where no sensitive data is exposed and when the server action does not have side effects.

Security noteSecurity Note:

Setting the UseHttpGet property to true might pose a security risk for your application if you are working with sensitive data or transactions. In GET requests, the message is encoded by the browser into the URL and is therefore an easier target for tampering.

The following example shows how to apply ScriptMethodAttribute to a Web method with the UseHttpGet property set to true. This code example is part of a larger example provided for the ScriptMethodAttribute class.

[ScriptMethod(UseHttpGet = true)]
public string EchoStringAndDate(DateTime dt, string s)
    return s + ":" + dt.ToString();

Windows 7, Windows Vista, Windows XP SP2, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5