2017-02-08 6 views
0

スーパーエージェントを使用して、さらに2つのパラメータをurlencodingなしで投稿したいとします。urlencodingを使わずにスーパーエージェントで2つのパラメータを投稿する方法

このパラメータをスーパーエージェントで送信します。

items="[{\"name\":\"\\u5185\\u5bb9\"}]"&user=1 

私はカールスクリプトを次のように試してみたいと思います。

curl -s -H "Content-type: application/x-www-form-urlencoded" -H "X-AAA-HEADER: aaa" -H "X-BBB-HEADER: bbb" -XPOST -d 'items="[{\"name\":\"\\u5185\\u5bb9\"}]"&user=1' http://localhost:3000 

私は以下のcoffeescriptコードを書いています。

postitem = (url, items, user) -> 
    new Promise((resolve, reject) -> 
    request.post(url).set('X-AAA-HEADER', 'aaa').set('X-BBB-HEADER', 'bbb').type('form').send(
     items: items 
     user: user).end (err, res) -> 
     if err 
     reject err 
     resj = JSON.parse(res.text) 
     resolve resj 
) 

promisepost = postitem("http://localhost:3000", '[{"name":"内容"}]', '1') 
promisepost.then (result) -> 
    console.log result 

ウェブサーバーでは、coffeescriptからのリクエストが続いていました。

items%3D%22%5B%7B%5C%22name%5C%22%3A%5C%22%5C%5Cu5185%5C%5Cu5bb9%5C%22%7D%5D%22%26user%3D1 

しかし、私は(カールから送られた)次のリクエストを受け取るしたい

items="[{\"name\":\"\\u5185\\u5bb9\"}]"&assignees=18 

私はCoffeeScriptのをどのように修正することができますか?

答えて

0

私はこの問題を自分で解決しました。 変更するコードを変更してください。

.send('items='+items+'user='+user).end (err, res) -> 
関連する問題