그래서 프론트 엔드에 AngularJS
을, 백엔드에 REST URL을 사용합니다. SlimPHP
VisualCaptch을 사용하려고하고 PHP 측의 지침을 따르고 백엔드에서 작동하는 것처럼 보입니다. URL을 호출하고 콘솔에 표시하는 간단한 Angular dataService를 만들었지 만 단순히 연결하는 방법을 이해하지 못합니다. Angular를 사용하여 해당 부분도 다운로드했지만 HTML
을 작성한 경우 <div>
안에 captcha
을 호출합니다. 실제로 실제로 문제의 1 개를 설명하겠습니다. Angular가 실행하려고 시도하는 URL이 잘못되었지만 구성 방법을 모르면 옵션이 있습니까? 그럼 내가 지금까지 가지고있는 코드를 보여 드리겠습니다 ... 그런데, Controller as vm
구문을 사용하기 때문에 코드에 $scope
을 찾을 수 없습니다.
HTML :VisualCaptcha를 AngularJS와 함께 사용하고 RESTful에서 slimPHP를 사용하는 방법
<div captcha options="vm.captchaOptions"></div>
AngularJS와 컨트롤러 코드 : 나는 각도로 VisualCaptcha의 예를 복사 할 때 그들이
# Captcha Routes
$app->get('/captcha/start/:howMany', function($howMany) use ($app) { CaptchaController::getCaptchaHowMany($app, $howMany); });
$app->get('/captcha/audio(/:type)', function($type = 'mp3') use ($app) { CaptchaController::getCatpchaDiskAudioStreaming($app, $type); });
$app->get('/captcha/image/:index', function($index) use ($app) { CaptchaController::getCatpchaDiskImageStreaming($app, $index); });
$app->post('/captcha/try', function() use ($app) { CaptchaController::postCatchaTryValidate($app); });
일을 내가 실행 알고
// this work as a dataService call to SlimPHP
dataService.getCaptchaHowMany().then(function(data) {
console.debug(data);
});
// where does my dataService call goes in here???
vm.captchaOptions = {
imgPath: 'vendors/visual-captcha/img/',
captcha: { numberOfImages: 5 },
init: function (captcha) {
vm.captcha = captcha;
}
};
SlimPHP의 경로, 코드, 나쁜 URL 호출을 보여줍니다 (내 SlimPHP API가 다른 위치에 있기 때문에 좋지 않습니다). 그래서 나쁜 URL 호출은 다음과 같습니다 그러나 GET http://localhost/myproject/user/start/5
는이 GET http://localhost/myproject/api/captcha/start/5
같아야 내 SlimPHP
API를 경로에 적절한 전화를 걸 어디 내가 VisualCaptcha와 각도에 대한 경로를 구성 할 ??? 나는 또한 나의 적당한 URL의 결과를 붙였다, 그래서 나는 나의 백엔드 (SlimPHP)가 제대로 작동하고 있다고 생각한다. 그것은 잘못된 컨트롤러의 Angular URL을 설정하는 것이다.
내가 더 지금 조금있어
편집, 나는 우리가 지금 이제 다음
vm.captchaOptions = {
imgPath: 'vendors/visual-captcha/img/',
captcha: {
numberOfImages: 5,
url: 'api/captcha'
},
// use init callback to get captcha object
init: function (captcha) {
vm.captcha = captcha;
}
};
나는 내 SlimPHP
API를 URL에 적절한 전화를 만드는 captchaOptions
내부의 url
을 설정할 수 있다는 것을 발견 이미지를 표시하지 않는 문제가 있습니다. 이미지가 PHP 나 클라이언트 측의 Angular에서 오는 것입니까? 어느 폴더에 모든 이미지가 포함되어야합니까? 실제로 콘솔이 오류 메시지가 : 실제로 오디오 원하지 않는
HTTP "Content-Type" of "text/html" is not supported. Load of media resource http://localhost/investing/api/captcha/audio?r=353oeaysbjg failed.
, 그것은 나에게이 오디오 오류를주고 있지만, 단순히 이미지를 사용하려면, 그게 다야. 누군가 나를 도울 수 있었습니까?