共两种方式:
1、使用ScriptMethodAttribute进行标记
2、 修改Web.config里面的WebServices
第一种:
<webServices>
<protocols>
<add name="HttpGet"/>
<add name="HttpPost"/>
</protocols>
</webServices>
<protocols>
<add name="HttpGet"/>
<add name="HttpPost"/>
</protocols>
</webServices>
第二种:
[WebMethod]
[ScriptMethod(UseHttpGet=true)]//此属性设置为true表示使用GET方法进行传输
public int GetRangeRandom(int minValue, int maxValue)
{
return new Random(DateTime.Now.Millisecond).Next(minValue, maxValue);
}
[ScriptMethod(UseHttpGet=true)]//此属性设置为true表示使用GET方法进行传输
public int GetRangeRandom(int minValue, int maxValue)
{
return new Random(DateTime.Now.Millisecond).Next(minValue, maxValue);
}
调用:
前台调用可以URL传参的形式:
例如:
http://101.4.4.22/PhotoUrlWebService.asmx/GetPhotoUrl?TdimCode=100
或者:
<asp:ScriptManager ID="ScriptManager1" runat="server" ScriptMode="Debug">
<Services>
<asp:ServiceReference Path="Services/UseHttpGetService.asmx" InlineScript="true" />
</Services>
</asp:ScriptManager>
<input type="button" value="Get Random" onclick="getRandom()" />
<input type="button" value="Get Range Random" onclick="getRandom(50, 100)" />
<script language="javascript" type="text/javascript">
function getRandom(minValue, maxValue)
{
if (arguments.length != 2)
{
UseHttpGetService.GetRandom(onSucceeded);
}
else
{
UseHttpGetService.GetRangeRandom(minValue, maxValue, onSucceeded);
}
}
function onSucceeded(result)
{
alert(result);
}
</script>
<Services>
<asp:ServiceReference Path="Services/UseHttpGetService.asmx" InlineScript="true" />
</Services>
</asp:ScriptManager>
<input type="button" value="Get Random" onclick="getRandom()" />
<input type="button" value="Get Range Random" onclick="getRandom(50, 100)" />
<script language="javascript" type="text/javascript">
function getRandom(minValue, maxValue)
{
if (arguments.length != 2)
{
UseHttpGetService.GetRandom(onSucceeded);
}
else
{
UseHttpGetService.GetRangeRandom(minValue, maxValue, onSucceeded);
}
}
function onSucceeded(result)
{
alert(result);
}
</script>