2010-12-28 3 views
3

그래, 괜찮은 Windows Azure 예제를 찾을 수없는 것 같습니다. this tutorial을 기반으로하는 간단한 hello world 응용 프로그램이 있습니다. JSON 또는 XML 대신 사용자 지정 출력을 원합니다. 그래서 내가 좋아하는 내 인터페이스를 만들어 : 내 인생에 들어Windows Azure에서 POST 데이터에 액세스

[ServiceContract] 
public interface IService 
{ 
    [OperationContract] 
    [WebInvoke(UriTemplate = "session/create", Method = "POST")] 
    string createSession(); 
} 

public class MyService : IService 
{ 
    public string createSession() 
    { 
     // get access to POST data here: user, pass 
     string sessionid = Session.Create(user, pass); 
     return "sessionid=" + sessionid; 
    } 
} 

을, 나는 POST 데이터에 액세스하는 방법을 알아낼 수 없습니다. 도와주세요. 감사!

+0

서비스는 어떤 프로토콜을 사용합니까? –

+0

HTTP 프로토콜 인'WebServiceHostFactory'를 HostFactory로 사용하고 있습니다. –

+0

세션 ID를 작성하면 패스에 타임 스탬프 요소가 있는지 확인하여 매번 다른 세션 ID를 얻을 수 있습니다. 또한 패스에 사용자를 포함 시키면 각 사용자마다 패스가 다른지 확인합니다 (타임 스탬프를 포함시키지 않으려는 경우). – Russell

답변

1

HttpContext가있는 경우 양식 데이터가있는 요청 개체가있을 수 있습니다. 나는 ASP.Net 태그의 일부를이 질문에 기초하고있다. 그래서 이것이 틀린다면이 다른 방법을 처리 할 필요가 있을지 모르지만 내 마음에 웹 서비스처럼 보인다.


EDIT : HttpRequest이 HTTP 요청이면 POST 데이터가 저장되는 위치되어야 형태 속성이 클래스이다. 이것은 System.Web에 포함되어 있으므로 쉽게 사용할 준비가되어 있어야합니다.


Sample code으로 Request.Form 속성을 보여주는 :

int loop1; 
NameValueCollection coll; 

//Load Form variables into NameValueCollection variable. 
coll=Request.Form; 
// Get names of all forms into a string array. 
String[] arr1 = coll.AllKeys; 
for (loop1 = 0; loop1 < arr1.Length; loop1++) 
{ 
    Response.Write("Form: " + arr1[loop1] + "<br>"); 
} 

이 추정 HttpRequest를 인스턴스는 주변에 있었다. 매개 변수에


WCF Simplified Part 4: Comparing the Request/Reply and One-Way Patterns 패스 당신의 "createSession"방법이 나타납니다 그 문자열에 걸릴해야합니다 있도록. 나는 Request.Response, Server, Application, Session과 같은 내장 객체가있는 ASP.Net 세계에 익숙하다.


예, 귀하의 경우 여부를 작동 할 경우 나도 몰라하지만 내가 링크 마지막 예제에서 매개 변수를 전달하는 방법이 있습니다 당신이 메서드 서명을 변경하려고 않은 경우.

+0

나는 이것이 실제로 보이는 WCF 서비스라고 생각한다. WCF 태그를 추가했습니다. – smarx

+0

@smartx, 고마워. 그것은 오타였습니다. @JB King, HttpContext에 액세스하는 방법을 모르겠다. ASP.NET을 전혀 사용하지 않는다고 생각합니다. 그러나 나는 잘 모르겠다. 나는 방금 튜토리얼을 따라 갔다. http://blogs.msdn.com/b/davidlem/archive/2010/04/26/wcf-rest-and-url-rewriting-with-windows- azure.aspx –

+0

@JB King, 위 샘플 코드의 컨텍스트에서 샘플 코드를 보여주십시오. 'POST 데이터에 대한 접근 권한을 얻으십시오 : 사용자, 패스'라는 주석을보십시오. 시간을 가치있게 만들기 위해 현상금을 만들었습니다. –

관련 문제