2017-12-04 18 views
2

私はレール3.4、ノード9、およびHapi jsを使用しています16.5.2
私がやっていることは、レールアプリケーションから入れ子になったJSONをhapi jsアプリが、何か変なことが起こっている。私はPOSTリクエストを送信するためにRest-Clientリクエストを使用しています。 JSONは、次の形式は次のとおりです。railsアプリからhapijsアプリにネストされたJSONを送信

data = { 
    time => { 
     start => "12.11.17", 
     end => "13.11.17" 
    }, 
    event => "party" 
} 

要求の形式は、次のとおりです

RestClient::Request.new(
    :method => :post, 
    :url => "mynodeserverroute", 
    :payload => data 
).execute 

問題ではなく、フォームのあることの、すべてのネストされた要素が本当に不気味送信されます:

time: { 
     start: "12.11.17", 
     end: "13.11.17" 
    } 

それは形で戻ってくる

"time[start]": "12.11.17", 
"time[end]": "13.11.17" 

これは後で検証するのが難しいです。 私は何が間違っていますか?私は要求に以下を追加しようとしました:

:header => { 
      :content_type => :json, 
      :accept => :json 
} 

しかし、それも助けになりませんでした。 JSONをレール経由で送信する別の方法はありますか?

答えて

0

データが奇妙に見えます。私はあなたのセットアップを知らない

"time":{"start":"12.11.17","end":"13.11.17"} 

:それはのようなものになるはずです。 しかし、私はシンプルなレールビルドで始めるでしょう - レスポンスは、コントローラで、対応するルートで行う。その後、RestClient :: Requestを実装します。例えば

#routes.rb 
... 
get '/this-url-is-for-seeing-the-data' => 'controller_name#post_this' 
... 

そして、コントローラで:

def post_this 
    respond_to to |format| 
    format.json { render json: { time: { start: "12.11.17", end: "13.11.17" } } } 
    end 
end 

あなたは今URL訪れることができます:/this-url-is-for-seeing-the-data.jsonを、ブラウザ内のデータを参照してください。

今、あなたはそれが正しいと知っている、あなたは残りの部分を構築することができ、私は:)

幸運を願っています!

関連する問題