使用Parse.com REST API时是否存在有限数量的字符

时间:2015-05-06 12:01:18

标签: php android rest parse-platform

我有一个带有多个文本和文本区域输入字段的自制Web界面。主要文本字段通过REST API以PHP脚本发送到Parse。它很有效,直到我在其中一个textarea输入字段中输入大约3.000个以上的字符。

低于约。 3.000个字符,一切正常。当高于约。 3.000个字符,数据被发送到解析,我可以在我的仪表板中的其他推送消息中看到它,并在“状态”中带有绿色复选标记,但推送通知不会发送到任何订阅的设备!

我正在使用它发送新闻文章,因此必须能够发送大约上面的整篇文章。 3.000个字符。

是否有关于要发送的字符数量或类似内容的限制?

有没有人知道可以帮助我的事情,或者对如何解决这个问题有任何建议?!

我的脚本的解析部分:

/*
  * PUSHING THE ARTICLE NOTIFICATION TO DEVICES SUBSCRIBING TO SPECIFIC CHANNELS(S)
  */

 $url = PUSH_URL;
 $appId = PUSH_APP_ID;
 $restKey = PUSH_REST_KEY;
 $channels = array($channelArray);

 $headers = array(
        "Content-Type: application/json",
        "X-Parse-Application-Id: " . $appId,
        "X-Parse-REST-API-Key: " . $restKey
 );

 $objectData = json_encode(array(
        "data" => array(
            "id" => $id ,
            "watchTitle" => stripslashes($watchTitle) ,
            "title" => $textTitle ,
            "alert" => $textSubtitle ,
            "mainText" => $textMain ,
            "imgUrl" => $imgUrl ,
            "uri" => "http://watch.jgskytte.com/parse/article.php?p=" . $id ,
        ),
        "channels" => $channels ,
 ));

 $rest = curl_init($url);
 curl_setopt($rest, CURLOPT_HTTPHEADER, $headers);
 curl_setopt($rest, CURLOPT_POST, true);  
 curl_setopt($rest, CURLOPT_POSTFIELDS, $objectData);  
 curl_setopt($rest, CURLOPT_RETURNTRANSFER, true);
 $response = curl_exec($rest);
 echo $response;

 curl_close($rest);

1 个答案:

答案 0 :(得分:0)

  

字符串长度没有明确限制,但解析对象限制为128k。否则,您应该使用解析文件。

这可能是因为您达到了URL的最大长度限制。为了解决这个问题,你可以使用POST请求,它将查询字符串作为HTTP请求体的一部分发送,该请求体没有这样的长度限制。

由于Parse的REST API希望将此查询作为GET请求发送,因此您需要传递一个额外的标头,让Parse知道将此POST视为GET:

X-HTTP-Method-Override: GET