Вот код на стороне клиента. Он работает внутри гаджетов Google
var params = {};
params[gadgets.io.RequestParameters.CONTENT_TYPE] = gadgets.io.ContentType.JSON;
var url = "http://invplatformtest.appspot.com/getrecent/";
gadgets.io.makeRequest(url, response, params);
Функция ответа:
function response(obj)
{
var r = obj.data;
alert(r['name']);
}
на стороне сервера код Python, отправляющий JSON:
class GetRecent(webapp.RequestHandler):
def get(self):
self.response.out.write({'name':'geocities'}) #i know this is where the problem is so how do i encode json in GAE?
, который просто должен отправить обратно кодированную строку Json
но когда я запускаю это, javascript выдает следующую ошибку:
r is null
alert(r['name']);
Если я получаю только текстовое содержимое и мой сервер отправляет текстовый текст, все работает нормально. Я получаю эту проблему, только когда пытаюсь отправить JSON. Где именно проблема? Я неправильно кодирую JSON на AppEngine? Я попытался использовать библиотеку JSON, но похоже, что это не поддерживается.
Где именно проблема? (