2014-09-29 91 views
0

我想建立一个JSON与一个POST发送发送时,但似乎我做错了什么:获得400错误的请求建立JSON对象与POST

var encodedRdf = base64_encode(rdf); 
var data = '{"path": path, "rdf": encodedRdf}'; 

这样,我得到400错误的请求错误,它根本不会触发REST。

相反,如果我把硬编码字符串如下正常工作:

var encodedRdf = base64_encode(rdf); 
var data = '{"path": "ppp", "rdf": "rrr"}'; 

任何想法?

谢谢,

+0

这可能是因为编码的Rdf没有被添加到数据字符串的事实。尝试:''{“path”:'+ path +',“rdf”:'+ encodedRdf +'}';' – Biketire 2014-09-29 11:05:02

+0

@GerardWesterhof同样的事情。 – mzereba 2014-09-29 11:12:29

+0

创建JSON对象,设置字段和JSON.stringify解决它! – mzereba 2014-09-29 11:45:18

回答

1

你VAR数据= '{ “路径”:路径, “RDF”:encodedRdf}';是无效的,变量path和encodedRdf不会被计算,而是像'path'和'encodedRdf'一样传递。尝试通过,如:

var data = { 
    path: path, 
    rdf: encodedRdf 
} 
+0

保持相同的错误。 – mzereba 2014-09-29 11:15:15

+0

创建JSON对象,设置字段和JSON.stringify解决它! – mzereba 2014-09-29 11:44:06

0

这解决了它。

data: JSON.stringify(data),