Я пытаюсь использовать http://www.javarants.com/2008/04/13/using-google-app-engine-to-extend-yahoo-pipes/ в качестве вдохновения, но у меня проблемы с выходом.
Это очевидно при тестировании с консолью и механизмом приложений "django util simplejson":
/cygdrive/c/Program Files/Google/google_appengine/lib/django
$ python
Python 2.5.2 (r252:60911, Dec 2 2008, 09:26:14)
[GCC 3.4.4 (cygming special, gdc 0.12, using dmd 0.125)] on cygwin
Type "help", "copyright", "credits" or "license" for more information.
>>> from django.utils import simplejson as json
>>> json.dumps('/')
'"\\/"'
>>> json.dumps('http://stackoverflow.com')
'"http:\\/\\/stackoverflow.com"
Насколько я могу прочитать это нормальное поведение:
В JSON только обратная косая черта, двойная
кавычки и управляющие символы ASCII
нужно сбежать. Косая черта
может быть экранирован как в примере с URL
ниже, но не обязательно.
Но при вводе обратно в yahoopipes они не "выводят" вывод, а все мои URL и html не работают.
Должен ли я действительно сделать
self.response.out.write(json.dumps(obj).replace('\\/','/'))
==== Редактировать ===
К моему великому удивлению, я вижу, что новейший simplejson, загруженный с сайта simplejson, не выполняет "косую черту" :(
Таким образом, реальная проблема связана с версиями django.util.simplejson для движков приложений?
=== Редактировать снова ===
А теперь я создал для него проблему в трекере: http://code.google.com/p/googleappengine/issues/detail?id=1128