I am literally trying to do the exact same thing. Did you ever figure it 
out? I am so stumped trying to get this to work and I'm having the same 
problem.

I can hit the login in the browser just fine & it works. The moment I do a 
curl I get a 302 to the users/login when I really need a 401 for the API.

Any response will be appreciated! Thanks.

On Wednesday, October 31, 2012 5:40:28 AM UTC-7, 462 wrote:
>
> I simply can't wrap my head around how this is supposed to work.
> I'm trying to create two separate logins. One for admin which is a normal 
> 'Form' authentication with all rights to alter/delete data, and one 'Basic' 
> authentication for model 'Account' which will have some allowed methods. No 
> matter what I do, I allways get a 302 response with redirect to 
> /users/admin/login, and never a Basic Authentication dialog. 
>
> Is it really not possible to do this with the Auth Component?
>
> Response from curl (tried a random url which should require 
> authentication):
>
> $curl -H "Accept:Application/json" 
> http://localhost:8888/myproject/admin/users/index.json -v 
>
> < HTTP/1.1 302 Found
> < Date: Wed, 31 Oct 2012 12:38:55 GMT
> < Server: Apache
> < X-Powered-By: PHP/5.3.6
> < Set-Cookie: CAKEPHP=a621801575312e3b56d2c670d314547d; expires=Wed, 
> 31-Oct-2012 16:38:55 GMT; path=/; HttpOnly
> < Location: http://localhost:8888/myproject/admin/users/login
> < Content-Length: 0
> < Content-Type: application/json
> < 
> * Connection #0 to host localhost left intact
> * Closing connection #0
>
>
>
> My AppController so far:
>
> <?php
>
> App::uses('Controller', 'Controller');
>
> class AppController extends Controller
> {
>
>     public $components = array(
>         'Session',
>         'RequestHandler',
>         'Auth',
>     );
>
>     public function beforeFilter()
>     {
>         parent::beforeFilter();
>
>         if ($this->params['ext'] == 'json') {
>             $this->Auth->authenticate = array(
>                 'Basic' => array(
>                     'userModel' => 'Account',
>                     'fields' => array('username' => 'facebook_id', 
> 'password' => 'facebook_token'),
>                 ),
>             );
>         } else {
>             $this->Auth->authenticate = array('Form');
>         }
>     }
>
>     public function isAuthorized($user)
>     {
>         return true;
>     }
>
> }
>
>

-- 
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP

--- 
You received this message because you are subscribed to the Google Groups 
"CakePHP" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to