2016-08-04 2 views
0

안녕하십니까. 나는 여전히 Loopback에 익숙하지 않고 뭔가를 놓치고 있다는 느낌이 들지만 어디서 무엇을 찾을 지 확신하지 못하기 때문에 조언이 도움이 될 것입니다.루프백의 POST 요청시 오류 401

앱이 있습니다. 표준 ACL로 로컬 인증을 사용하고 있습니다.

저는 $ owner 만 열려있는 메소드가 거의없고 인증 된 $에 대해 열려있는 메소드는 거의 없습니다. 나는 데이터를 검색하는 애플 리케이션 내에서 몇 POST 요청을 사용하고 때마다 401 오류가 발생합니다. GET 요청을 사용하는 경우 URL과 같은 URL에 액세스 토큰 ID를 포함시켜야합니다.? access_token = jjkdfsjjkj334.

POST 요청에 대해 비슷한 종류의 트릭이 있다고 생각합니다.

도움을 주시면 감사하겠습니다.

답변

1

게시물 요청의 경우 해당 게시물 호출의 "인증"헤더로 access_token을 전달하십시오.

request({url: url, json: true, headers: {'Authorization': 'access-token-value'}}, function (err, res, responseJson) { 

console.log(responseJson); 

}); 

또한, 다른 헤더를 지정 수락 형 같은 등

+0

이 글을 읽고 여전히 문제가 있다면. 내 것은'Authorization' 헤더 대신'Authentication' 헤더가 보내 졌기 때문에 발생했습니다. 'Authorization' 헤더를 사용하십시오. –

1

다음 ACL과 Test라는 모델이 있다면 :

{ 
    "principalType": "ROLE", 
    "principalId": "$everyone", 
    "permission": "DENY" 
}, 
{ 
    "principalType": "ROLE", 
    "principalId": "$authenticated", 
    "permission": "ALLOW", 
    "property": "create" 
} 

당신은 할 수 있어야한다을 POST 요청 후 :

curl -X POST --header "Content-Type: application/json" --header "Accept: application/json" -d "{}" "http://localhost:3000/api/Tests?access_token=cor7DDfUKoFSI6DzgCezQzoKFOuSmpLYzSF85xA8QXePkbFAGDKjjp7QwaVlP11B" 

항상 구성 요소 탐색기를 사용하고 싶습니다. 작동하는 것과 작동하지 않는 것을 테스트합니다. 내 추측으로는 ACL에 뭔가가 제대로 설정되어 있지 않다는 것입니다.

+0

예 [here] (https://github.com/strongloop/loopback-example-access-control#create-acl-entries)도 있습니다. – richardpringle