λ²μ : 1.1.4
createNewWall: function(wall, successCallback, errorCallback) {
return $http.post($rootScope.baseAppsAPI + '/walls', null, {
params: wall
}).success(function(data, status) {
return successCallback.call(this, data);
}).error(function(data) {
return errorCallback.call(this, data);
});
}
angular isSuccess ν¨μκ° μ λλ‘ μλνλμ§ νμΈνμ΅λλ€. λλ μ΄κ²μ window κ°μ²΄μ μΆκ°νκ³ μλ μ½λ(λ΄ μ±κ³΅ μ½λ°±μ λ°°μΉ)λ‘ μΈν΄ μ€λ₯ μ½λ°±μ΄ νΈμΆλλμ§ νμΈνμ΅λλ€.
if (window.isSuccess(status)) {
return successCallback.call(this, data);
} else {
return errorCallback.call(this, data);
}
λ¬Έμ μ μμΈμ λν μμ΄λμ΄κ° μμ΅λκΉ? $http μ½μμ΄ μ¬λ°λ₯΄κ² κ±°λΆ/ν΄κ²°λμ§ μλ λ¬Έμ κ° μμ΅λκΉ?
λλ κ°μ λ¬Έμ μ μ§λ©΄ ν΄μλ€. λ¬Έμ λ₯Ό μ’ λ£ν λ°©μμ λ΄κ° λκ° μλͺ»νκ³ μλ€λ κ²μ μλ―Έν μ μμ΅λλ€. ν΄κ²° λ°©λ²μ 곡μ ν΄ μ£Όμκ² μ΅λκΉ? μ΄κ²μ μ΄λμμλ μ°Ύμ μ μμ΅λλ€.
λ‘λ²νΈ.,
λ¬Έμ κ° (κΈ°μ μ μΌλ‘) ν΄κ²°λμκΈ° λλ¬Έμ λ¬Έμ λ₯Ό λ«μμ΅λλ€.
λ΄ μλΉμ€λ₯Ό μ½κ° μμ νμ΅λλ€. κ·Έλλ λμμ¬ κ² κ°λ€.
κ°νμ μΌλ‘. κ·Έλμ λ μ΄μ λ΄ μͺ½μ λ¬Έμ μΈμ§ μλλ©΄
κ°λμ μ§μ ν λ¬Έμ . μνλ κ²½μ° λ¬Έμ λ₯Ό λ€μ μ΄ μ μμ΅λλ€.
λ¬Έμ λ₯Ό μΆκ°νμκ² μ΅λκΉ? κ·Έκ² λΉμ μ μν΄ μλν©λκΉ?
2013λ 5μ 13μΌ μμμΌ μ€μ 9μ 13λΆμ Robert [email protected] μ λ€μκ³Ό κ°μ΄ μΌμ΅λλ€.
λλ κ°μ λ¬Έμ μ μ§λ©΄ ν΄μλ€. λΉμ μ΄ λ¬Έμ λ₯Ό λ«μ λ°©μμ λ΄κ°
μλͺ»λ μΌμ ν μ μμ΅λλ€. μ루μ μ 곡μ ν΄ μ£Όμκ² μ΅λκΉ? μΊνΈ
μ΄λμλ μ΄κ²μ μ°ΎμΌμμμ€.β
μ΄ μ΄λ©μΌμ μ§μ λ΅μ₯νκ±°λ Gi tHubhttps://github.com/angular/angular.js/issues/2609#issuecomment -17810417μμ νμΈνμΈμ.
.
곡μν,
루μ΄μ€ W. μλΉλ‘
μμμ μΈκΈνλ―μ΄ μ΄ λ¬Έμ λ κ°νμ μΌλ‘ λ°μνκΈ° λλ¬Έμ λ€μ μ½λλ€. rtpm, λ¬Έμ λ₯Ό μλ³νλ λ° λμμ΄ λ μ μλ μ¬μ© μ¬λ‘/μΆκ° μ 보λ₯Ό ν¬ν¨νμΈμ.
λ‘λ²νΈ,
ν¨κ» 보λ΄μ£Όμ
μ κ°μ¬ν©λλ€.
μλ΅ μ€λ₯μ λν μ½μμ κ±°λΆνμ§ μλ κΈ°λ³Έ μΈμ¦μ μν΄ μμ±ν http μΈν°μ ν°κ° μμ΅λλ€.
λ΄λ κ°μ¬ν©λλ€. λλ κ°μ λ¬Έμ κ° μμλ€.
μλ²κ° 401μ λ°ννλ©΄ +1μ΄ λ°μν©λλ€.
+1
μλ²κ° 401 μν μ½λλ₯Ό λ°ννλ λμ μ½λ°± κΈ°λ₯μ΄ μλνμ§ μμ΅λλ€.
μ΄μ λν μ§μ μ΄ μμ΅λκΉ? 400κ³Ό κ°μ λ¬Έμ μ μ§λ©΄νμ΅λλ€.
λλ₯Ό μν΄ @lsiv568 μ source )λ₯Ό λΉλν λ κ±°λΆλ μ½μμ μλμΌλ‘ λ°νν΄μΌ ν©λλ€.
.factory('myInterceptor', function($q) {
return {
response: function (response) { return response; },
responseError: function(response) {
// do stuff or
return $q.reject(response);
}
};
});
400κ³Ό κ°μ λ¬Έμ μ μ§λ©΄..
κ·Έλ¬λ λ¬Έμ κ° μ’
λ£λ μ΄μ λ 무μμ
λκΉ? μ΄ λ¬Έμ μ λν νΉμ ν΄κ²° λ°©λ²μ΄ μμ΅λκΉ?
λν μ€λ₯ 400κ³Ό ν¨κ» μ΄ λ¬Έμ μ μ§λ©΄νκ³ μμ΅λλ€. μ΄ λ¬Έμ κ° ν΄κ²°λμμ΅λκΉ? κ·Έλ λ€λ©΄ μ΄λ€ λ²μ μμ?
λͺ¨λ >299 μ€λ₯μ λμΌν λ¬Έμ κ° λ°μνμ΅λλ€. μ¬μ©μ μ§μ μλ΅ μΈν°μ ν°μ ν¨κ» Restangularλ₯Ό μ¬μ©νκ³ μμ§λ§ CSRF ν ν° ν€λλ₯Ό μ μΈνκ³ κΈ°λ³Έ μ 곡λλ $http μλΉμ€μμ μ€λ₯κ° λ°μν©λλ€. (μ΄μ¨λ Restangular λ΄μμ μλμΌλ‘ μ§μ°λ κ°μ²΄λ₯Ό κ±°λΆνλ €κ³ μλνμ§λ§ μμλλ‘ μ무 κ²λ λ³κ²½λμ§ μμμ΅λλ€.)
μ λ μ΄ λ¬Έμ κ° λ°μνλλ° λ€μ μ΄ μ μλμ?
μλ λ¬Έμ μμ λ³΄κ³ λ λ¬Έμ λ μ¬μ©μ μ μ μΈν°μ ν°κ° μ€λ₯ 쑰건μ μ λλ‘ μ²λ¦¬νμ§ μμκΈ° λλ¬Έμ λλ€(μ½μμ΄ κ±°λΆλμ§ μμ). λκ΅°κ° μ¬μ ν λ¬Έμ λ₯Ό κ²ͺκ³ μλ€λ©΄ μλ§λ κ°μ μν©μΌ κ²μ λλ€. λ²κ·Έκ° μλ μ¬μ©μ μ§μ μΈν°μ ν°κ° μλμ§ νμΈνμμμ€. μ¬μ ν AngularJS μΈ‘μμ 무μΈκ°κ° μ³μ§ μλ€κ³ μκ°λλ©΄ _μ΅μνμ λΌμ΄λΈ_μ¬ν μλ리μ€λ₯Ό μ 곡νμμμ€(μ΄μμ μΌλ‘λ http://plnkr.co/λ₯Ό μ¬μ©νμ§λ§ λ€λ₯Έ μ μ¬ν λꡬλ κ°λ₯ν©λλ€).
@pkozlowski-opensource κ°μ¬ν©λλ€. μ€μ λ‘ κ·Έκ²μ΄ μ λ¬Έμ μΈμ§ νμΈν μ μμ΅λλ€(d'oh).
μ΄μ κ΄ν΄ Angular λ¬Έμμ λ©λͺ¨κ° μμ΄μΌ ν©λλ€. λ΄ μΈν°μ ν°λ₯Ό ꡬννλ $http μ½μ λμμ μμ ν μ¬μ μνκ³ μλμ§ μ ν λͺ°λμ΅λλ€.
λλ λνμ΄ λ¬Έμ μ λΆλͺμ³€κ³ μ€μ λ‘ μ¬λ°λ₯Έ λ°νμνκΈ° λλ¬Έμ λ°λ³΅ν΄μ 보λ μΈν°μ ν°λ₯Ό κ°μ§κ³ μμμ΅λλ€. λλμ΄ λ²μΈμ μ°Ύμμ΅λλ€. μ±κ³΅/μ€λ₯μ λν μ¬λ¬ νΈμΆμ μ¬μ©νκ±°λ μ€μ λ‘ μ¬λ°λ₯Έ κ²μ λ°ννλμ§ νμΈν΄μΌ ν©λλ€. μ±κ³΅ μ½λ°±μ μμ λ μλ΅μ λ°νν΄μΌ νκ³ μ€λ₯ μ½λ°±μ μΈν°μ ν°μ λ§μ°¬κ°μ§λ‘ $q.rejectμ ν¨κ» κ±°λΆλ₯Ό λ°νν΄μΌ ν©λλ€.
+1 κ°μ¬ν©λλ€. $ http.interceptorμ μ μ μ¬μ©μ μ μμ λμΌν λ¬Έμ κ° μμμ΅λλ€.
@chmanie μ λ΅λ³μ +1μ λλ€. λ§€μ° κ°μ¬ν©λλ€! λ¬Έμ λ₯Ό ν΄κ²°νμ΅λλ€.
+1 @chmanieλ κ°μ¬ν©λλ€! λ΄ λ¬Έμ λ ν΄κ²°
+1 κ°μ¬ν©λλ€. κ±°λΆνλ©΄ ν΄κ²°λμμ΅λλ€!
+1 .λ΄ λ¬Έμ λ₯Ό ν΄κ²°ν΄ μ£Όμ μ κ°μ¬ν©λλ€.
+1 κ°μ¬ν©λλ€. κ±°λΆνλ©΄ ν΄κ²°λμμ΅λλ€!
@chmanie μ μ루μ μ΄ μ μκ² ν¨κ³Όμ μ λλ€.
@chmanie μ루μ μ΄ λ¬Έμ λ₯Ό ν΄κ²°νμ΅λλ€. Angularjs λ¬Έμμ μ΄μ λν λ©λͺ¨κ° μμ΄μΌ ν©λλ€.
@chmanie κ°μ¬ν©λλ€~
κ°μ₯ μ μ©ν λκΈ
λλ₯Ό μν΄ @lsiv568 μ source )λ₯Ό λΉλν λ κ±°λΆλ μ½μμ μλμΌλ‘ λ°νν΄μΌ ν©λλ€.