1

当我从 Apex 类发送 HTTP Post 请求并尝试使用 JSON Parser 解析响应时,我收到此错误。以下是给我“方法不存在或签名不正确:[String].createParser(String)”的代码

   req.setMethod('POST');
   res = http.send(req);
   JSONParser parser = JSON.createParser(res.getBody());

据我所知 createParser 是一个静态方法,我们可以这样称呼它。我确实参考了 salesforce.com 的文档 - http://www.salesforce.com/us/developer/docs/apexcode/Content/apex_json_jsonparser.htm

你能帮我在这里并纠正我哪里出错了吗?谢谢

4

1 回答 1

3

您是否使用名为 JSON 的变量?请记住,Apex 可以不区分大小写。我有一个类似的问题(虽然解析一个字符串,而不是一个 http 响应)也许你的问题是一样的:

public static someMethod Parser(String json) {
    ...    
    JSONParser parser = JSON.createParser(json);
    ...

注意我传递的参数。这种特殊情况可以通过将“json”参数重命名为其他名称来解决。

public static someMethod Parser(String jStr) {
    ...    
    JSONParser parser = JSON.createParser(jStr);
    ...

瞧!

于 2016-10-28T00:34:09.083 回答