Я пытаюсь создать спокойный сервис, используя GAE и RESTlet на стороне сервера и jQuery на стороне клиента.Несмотря на очень скудную документацию по RESTlet, я полон решимости ознакомиться со спокойной структурой.Однако я даже не могу извлечь из этого базовую функциональность.
Проблема, с которой я столкнулся, заключается в том, что из GET, POST, PUT и DELETE появляются только запросы DELETE для доставки части данных.
Вызовы выполняются следующим образом:
function put() {
try {
$.ajax({
url : url,
type : "PUT", //Same for GET, POST and DELETE
data : data,
success : function(data) {
try {
$("#results").text(data);
} catch (e) {
alert(e);
}
}
});
} catch (e) {
alert(e);
}
}
На стороне сервера у меня есть ресурс, подключенный к маршрутизатору, и он выглядит так:
public class TaskResource extends ServerResource
{
String userID = "jada";
@Override
public void doInit()
{
super.doInit();
userID = (String) getRequestAttributes().get("user");
}
@Get
public String toString(String str)
{
return "GET: task of " + userID + " ||| DATA: " + str;
}
@Put
public String putit(String str)
{
return "PUT: task of " + userID + " ||| DATA: " + str;
}
@Post
public String postit(String str)
{
return "POST: task of " + userID + " ||| DATA: " + str;
}
@Delete
public String deleteit(String str)
{
return "DELETE: task of " + userID + " ||| DATA: " + str;
}
}
Вв четырех случаях выше, когда str, GET получает пустой аргумент (понятно), PUT и POST получают пустые строки, а DELETE получает фактически отправленные данные.
Я экспериментировал с изменением типа аргументов (на Представление илиФорма) и с более конкретными аннотациями (например, @Get ("xml")).Пока безуспешно.
Любые рекомендации приветствуются.