Support for POST with JSON body #278
Open
+44
−7
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There are multiple open issues asking support for POST requests with JSON body (as needed to use the new POST direct_messages/events/new API). Pull request #230 addresses this problem, but it seems to have ended up stuck.
This pull request tries to address the problem while ensuring complete backward compatibility with any existing use the the node-twitter library. With the updated code, when the
client.post
convenience method is used to submit a JSON body, theparams
object must be structured as follows:For example:
Note that when the POST request is passed to the request module with the indication to use JSON body, the request module automatically parses the response body. Therefore, the code has been updated to avoid attempting to parse the data returned by the request module if the data is an object rather than a string.