0

我正在使用 simpldb 并试图保存 rahul' mehta在 simpledb 中,但它给了我以下错误:代码:

   function htmlEscape(text) {
     return text.replace(/&/g,'&').
         replace(/</g,'&lt;').
         replace(/"/g,'&quot;').
         replace(/'/g,'&#039;');
    }
    console.log(params.filename);

  if (params.filename!=undefined) params.filename=htmlEscape(params.filename);
    console.log(sys.inspect(params));
  sdb.putItem(domain, params.objectid, params, function( error ) {
  });

输出 :

rahul' mehta

{ 
  filename: 'rahul&#039; mehta',
  }

错误 :

   {"event":"error","errno":"InvalidQueryExpression","message":"The specified query expression syntax is not valid.","queueno":7}

为什么会出现这个错误,我该如何解决?

4

1 回答 1

1

此错误是因为您尝试运行Amazon SimpleDB SELECT Query并且该查询的语法错误。这可能是因为在查询中 --属性值-- 必须用单引号s 即“属性值”打开,如果 --域名-- 和 --属性名称-- 包含任何特殊字符,那么它们必须打开与急性即Domain NameAttribute Name。我认为您可以保存rahul' mehta,但是当您尝试获取已保存的属性值时,您会收到此错误。字符串没有问题,您可以看到它已使用 SDB Explorer 成功保存 http://www.sdbexplorer.com/

于 2011-08-05T05:46:15.403 回答