Пожалуйста, со мной. Это мой первый идти на App Engine Google :)RPC для Google App Engine от C# клиента
У меня много проблем, требующих, основанного на Java Google App Engine сервера от C# клиента
Это как мой клиент код выглядит следующим образом:
// C# Client
static void Main(string[] args)
{
const string URL = "http://localhost:8888/googlewebapptest7/greet";
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(URL);
request.Method = "POST";
request.ContentType = "text/x-gwt-rpc; charset=utf-8";
string content = "<?xml version='1.0'?><methodCall><methodName>greetServlet.GetName</methodName><params></params></methodCall>";
byte[] contentBytes = UTF8Encoding.UTF8.GetBytes(content);
request.ContentLength = contentBytes.Length;
using (Stream stream = request.GetRequestStream())
{
stream.Write(contentBytes, 0, contentBytes.Length);
}
// get response
WebResponse response = request.GetResponse();
using (Stream responseStream = response.GetResponseStream())
{
string res = new StreamReader(responseStream).ReadToEnd();
Console.WriteLine("response from server:");
Console.WriteLine(res);
Console.ReadKey();
}
сервер в основном веб-проект Google по умолчанию с дополнительным способом:
public String GetName() { return "HI!"; }
добавлено в GreetingServiceImpl.
Everytime я бег моего клиента, я получаю следующее исключение из сервера: An IncompatibleRemoteServiceException was thrown while processing this call. com.google.gwt.user.client.rpc.IncompatibleRemoteServiceException: This application is out of date, please click the refresh button on your browser. (Malformed or old RPC message received - expecting version 5)
Я хотел бы сохранить его в простых запросах HTTP.
Любая идея, что происходит? -Любая помощь приветствуется!
Похоже, вы пытаетесь подражать RPC-формату GWT. На чем вы основываетесь? Что заставляет вас думать, что этот конкретный URL-адрес будет принимать этот тип вызова RPC? –
Я перезаписал protected java.lang.String readContent (javax.servlet.http.HttpServletRequest запрос) и может видеть входящий звонок. Я думал, что XML-RPC-запрос должен быть достаточным, но когда я ступаю по коду, похоже, что запрос должен начинаться с чего-то вроде 5 |? |? |? |? где ? должны быть целыми числами. Я еще не исследовал, что означают целые числа У вас есть идея, чтобы лучше подойти? – EsbenB