2017-12-04 1 views
2

난 레일 3.4, 노드 9 및 Hapi js를 사용하고 있습니다 16.5.2
내가 뭘 하려는지 레일 애플 리케이션에서 hapi js에 중첩 JSON을 보내 하지만 뭔가 이상한 일이 일어나고 있습니다. 나는 POST 요청을 보내기 위해 Rest-Client 요청을 사용하고 있습니다. json으로는 다음과 같은 형식이다 :레일 애플 리케이션에서 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"} 

: 그것은처럼 보일 것이다. 그러나 간단한 레일 빌드 - in respond_to 컨트롤러에서, 해당 경로와 함께 시작할 것입니다. 그리고 나서 RestClient :: Request를 구현합니다. 예를 들어

:

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

을 그리고 컨트롤러에서 : /this-url-is-for-seeing-the-data.json를하고 브라우저에서 데이터를 볼 : 이제 URL을 방문 할 수

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

. , 내가 :)

행운을 희망

지금 당신은 그것을 잘 알고 그리고 당신은 나머지를 구축 할 수 있습니다!

관련 문제