jQuery调用RESTful WCF示例代码(GET方法/POST方法)_jquery
不废话了,直奔主题吧
wcf端:
近几年比较流行restful,为了能让ajax调用,同时也为了支持restful风格的uri,在创建一个Ajax-enabled Wcf Service后,必须手动修改svc文件,指定Factory,即:
Factory="System.ServiceModel.Activation.WebServiceHostFactory" %>
注:如果不添加Factory,则wcf将无法用类似http://localhost/helloWorld.svc/Hello/person/name 的restful方式直接访问。
同时还要去掉web.config中的
好了,开始写代码,鉴于wcf调用时有GET/POST二种方式,下面把几种常用的情况都写一个示例方法:
using System.Collections.Generic;
using System.ServiceModel;
using System.ServiceModel.Activation;
using System.ServiceModel.Web;
namespace ajaxSample
{
[ServiceContract(Namespace = "http://yjmyzz.cnblogs.com/")]
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
public class HelloWorld
{
///
/// 只能Post的Restful方法
///
///
///
///
[OperationContract]
[WebInvoke(Method = "POST", UriTemplate = "PostRestfulTest/{person}/{welcome}", ResponseFormat = WebMessageFormat.Json)]
public List
{
List
result.Add("PostRestfulTest -> from server:");
result.Add(person);
result.Add(welcome);
return result;
}
///
/// 只能Get的Restful方法
///
///
///
///
[OperationContract]
[WebInvoke(Method = "GET", UriTemplate = "GETRestfulTest/{person}/{welcome}", ResponseFormat = WebMessageFormat.Json)]
public List
{
List
result.Add("GETRestfulTest -> from server:");
result.Add(person);
result.Add(welcome);
return result;
}
///
/// 即可Get与Post的Restful方法
///
///
///
///
[OperationContract]
[WebInvoke(Method = "*", UriTemplate = "RestfulTest/{person}/{welcome}", ResponseFormat = WebMessageFormat.Json)]
public List
{
List
result.Add("RestfulTest -> from server:");
result.Add(person);
result.Add(welcome);
return result;
}
///
/// 只能Post的常规方法(注:Post方式,BodyStyle必须设置成WrappedRequest或Wrapped)
///
///
///
///
[OperationContract]
[WebInvoke(Method = "POST", ResponseFormat = WebMessageFormat.Json, BodyStyle=WebMessageBodyStyle.WrappedRequest)]
public List
{
List
result.Add("PostRestfulTest -> from server:");
result.Add(person);
result.Add(welcome);
return result;
}
///
/// 只能Get的常规方法
///
///
///
///
[OperationContract]
[WebInvoke(Method = "GET", ResponseFormat = WebMessageFormat.Json)]
public List
{
List
result.Add("GETTest -> from server:");
result.Add(person);
result.Add(welcome);
return result;
}
}
}
jQuery调用代码:
有时候,WCF暴露的方法中可能需要一些敏感信息做为参数(比如用户名/用户ID之类),这时如果直接用js来调用wcf,可能会把这部分信息泄漏在客户端,这种场景下,我们也经常用一个服务端的ashx来做中转
TestService.svc
using System.ServiceModel;
namespace ashx_jQuery
{
[ServiceContract]
public class TestService
{
///
/// 获取当前用户指定月份的工资
///
///
///
///
[OperationContract]
public double GetSalary(int userId,int month)
{
if (month == 1)//只是演示而已
{
return 5000;
}
else
{
return 1000;
}
}
}
}
AjaxProcess.ashx
using System.Web;
namespace ashx_jQuery
{
///
/// Summary description for AjaxProcess
///
public class AjaxProcess : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/plain";
string month = context.Request["month"];
TestService wcf = new TestService();
double salary = wcf.GetSalary(GetUserId(), int.Parse(month));
context.Response.Write("{salary:" + salary + "}");
}
///
/// 获取当前的用户ID
///
///
private int GetUserId()
{
return 1;
}
public bool IsReusable
{
get
{
return false;
}
}
}
}
jQuery调用:
示例代码:点击下载

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds



Flask-RESTful et Swagger : meilleures pratiques pour créer des API RESTful dans des applications Web Python (partie 2) Dans l'article précédent, nous avons exploré les meilleures pratiques pour créer des API RESTful à l'aide de Flask-RESTful et Swagger. Nous avons présenté les bases du framework Flask-RESTful et montré comment utiliser Swagger pour créer la documentation d'une API RESTful. Livre

Développement d'API RESTful avec Laravel : créer des services Web modernes Avec le développement rapide d'Internet, la demande de services Web augmente de jour en jour. En tant qu'architecture de service Web moderne, RESTfulAPI est légère, flexible et facile à développer, elle a donc été largement utilisée dans le développement Web. Dans cet article, nous présenterons comment utiliser le framework Laravel pour créer une API RESTful moderne. Laravel est un langage PHP

Django est un framework Web qui facilite la création d'API RESTful. RESTfulAPI est une architecture Web accessible via le protocole HTTP. Dans cet article, nous présenterons comment utiliser Django pour créer des API RESTful, notamment comment utiliser le framework DjangoREST pour simplifier le processus de développement. Installer Django Tout d'abord, nous devons installer Django localement. Vous pouvez utiliser pip pour installer Django, en particulier

1. Présentation de RESTful Le style REST (RepresentationalStateTransfer) est un style de conception d'applications Web orienté ressources qui suit certains principes de conception pour que les applications Web aient une bonne lisibilité, évolutivité et maintenabilité. Expliquons en détail chaque aspect du style RESTful : Identifiant de ressource : Dans le style RESTful, chaque ressource possède un identifiant unique, généralement une URL (UniformResourceLocator). Les URL sont utilisées pour identifier l'emplacement des ressources afin que les clients puissent y accéder à l'aide du protocole HTTP. Par exemple, une simple URL pourrait être : http

Avec le développement et la popularité d’Internet, les applications web et les applications mobiles deviennent de plus en plus courantes. Ces applications doivent communiquer avec le serveur backend et obtenir ou soumettre des données. Dans le passé, la manière conventionnelle de communiquer consistait à utiliser SOAP (Simple Object Access Protocol) ou XML-RPC (XML Remote Procedure Call). Cependant, au fil du temps, ces protocoles sont devenus trop lourds et complexes. Les applications modernes nécessitent des API plus légères et plus simples pour communiquer. RESTfulAPI (AP de conversion d'état de la couche de présentation

Dans l'environnement actuel d'innovation continue dans les technologies de l'information, l'architecture RESTful est populaire dans diverses applications WebAPI couramment utilisées et est devenue une tendance émergente en matière de développement de services. En tant que framework Web hautes performances et facile à étendre dans Golang, le framework Beego est largement utilisé dans le développement de services RESTful en raison de ses avantages de haute efficacité, de facilité d'utilisation et de flexibilité. Ce qui suit fournira des références aux développeurs du point de vue des meilleures pratiques pour développer des services RESTful dans Beego. 1. Conception de routage dans REST

RESTfulAPI est un style de conception d'API couramment utilisé dans l'architecture Web actuelle. Son concept de conception est basé sur la méthode standard du protocole HTTP pour compléter la représentation et l'interaction des ressources Web. Au cours du processus de mise en œuvre, l'API RESTful suit une série de règles et de contraintes, notamment la mise en cache, la séparation serveur-client, l'apatridie, etc. Ces règles garantissent la maintenabilité, l'évolutivité, la sécurité et la facilité d'utilisation de l'API. Ensuite, cet article présentera en détail la conception de RESTfulAPI et sa mise en œuvre.

Comment utiliser Java pour développer une API basée sur RESTful RESTful est un style architectural basé sur le protocole HTTP. Il utilise les méthodes GET, POST, PUT, DELETE et autres du protocole HTTP pour exploiter les ressources. Dans le développement Java, certains frameworks peuvent être utilisés pour simplifier le processus de développement de l'API RESTful, comme SpringMVC, Jersey, etc. Cet article vous présentera en détail comment utiliser Java pour développer un système basé sur RESTful.
