WCF REstful Service在Uri上传递用户和密码
本文关键字:用户 密码 REstful Service Uri WCF | 更新日期: 2023-09-27 18:02:51
我确实有一个WCF RESTful . net 4.0服务,它运行并从URI的主体中消费值#Json。
调用方法的方式如下:
使用Poster作为POST请求http://localhost: 25512/JSONService1.svc CreateItem
身体:有人知道由罗=
没问题!
但是我也想使用uri,
http://localhost: 25512/JSONService1.svc/CreateItem ? uid = aaa&通过= 111
这是我的代码
service .cs
[OperationContract]
[WebInvoke(UriTemplate = "CreateItem", // ISSUES <<< not sure what to do here
RequestFormat = WebMessageFormat.Json,
ResponseFormat = WebMessageFormat.Json, Method = "POST")]
void CreateItem(Stream streamOfData,string uid, string pass);
和与它相关的代码Service1.svc.cs
public void CreateItem(Stream streamOfData, string uid, string pass)
{
StreamReader reader = new StreamReader(streamOfData);
String res = reader.ReadToEnd();
NameValueCollection coll = HttpUtility.ParseQueryString(res);
}
要获取原始URI,您可以执行以下操作:
string originalUri = System.ServiceModel.Web.WebOperationContext.Current.IncomingRequest.UriTemplateMatch.RequestUri.OriginalString;
你可以使用系统。Uri类和/或HttpUtility类来解析Uri。
使用系统。Uri类只是传入Uri。
Uri myUri = new Uri("http://localhost:25512/JSONService1.svc/CreateItem?uid=aaa&pass=111");
或根据您的要求:
Uri myUri = new Uri(originalUri);
然后,您可以使用一些内置属性来检查Uri的各个部分。