2011-04-14 105 views
103

我試圖用os x終端的curl命令在我的rails應用程序上創建用戶。無論我如何格式化數據,該應用程序都會返回非驗證通過的響應。通過終端將curl json post請求發送到rails應用程序

curl http://localhost:3000/api/1/users.json -i -X POST -d {"user":{"first_name":"firstname","last_name":"lastname","email":"[email protected]","password":"app123","password_confirmation":"app123"}}" 

我試過每一個變化。我試過使用[]括號,我試過用戶= {數據..},似乎沒有任何工作。有任何想法嗎?

+0

爲什麼不直接使用'$軌C'和'User.create:FIRST_NAME =>' John',:last_name =>'Smith',...''? – coreyward 2011-04-14 04:27:12

+22

@coryward:這會打敗API的全部目的。 – Wukerplank 2011-04-14 04:29:47

+0

真的讓我難倒 – 2011-04-14 04:51:49

回答

216

首先,有一個多餘的「在你的命令結束

試試這個

curl -v -H "Accept: application/json" -H "Content-type: application/json" -X POST -d ' {"user":{"first_name":"firstname","last_name":"lastname","email":"[email protected]","password":"app123","password_confirmation":"app123"}}' http://localhost:3000/api/1/users 
+0

th是的。我昨晚想到它需要-H Accept和Content-type。 – 2011-04-14 13:38:41

+0

嗨我凸輪調用這樣的腳本:http://www.abc.com/?a=4&b={"x":"y「}。你能告訴我在捲髮終端會是什麼樣子? – user739711 2012-03-21 11:59:21

+0

嗯,在我的情況下,我需要用引號括起目標URL – 2012-12-19 03:33:05