2010-07-26 7 views

Répondre

2

10.4.2 401 non autorisé

La demande requiert une authentification utilisateur . La réponse DOIT inclure un champ d'en-tête WWW-Authenticate (section 14.47) contenant un défi applicable à la ressource demandée. Le client PEUT répéter la demande avec un champ d'en-tête Autorisation approprié (section 14.8). Si la demande a déjà inclus les informations d'identification Autorisation , la réponse 401 indique que l'autorisation a été refusée pour ces informations d'identification . Si le réponse 401 contient le même défi que la réponse précédente, et l'agent utilisateur a déjà essayé l'authentification au moins une fois, l'utilisateur DEVRAIT être présenté l'entité qui a été donnée dans la réponse, étant donné que cette entité pourrait inclure des informations de diagnostic pertinentes. L'authentification HTTP est expliquée dans "HTTP Authentification: Basic et Digest Access Authentication" [43].

Status Code Definitions

10

Si le site requiert une authentification de base, vous pouvez donner vos informations d'identification de cette façon:

fopen("http://user:[email protected]/path/to/resource", "r"); 

Si elle utilise l'authentification digest, vous aurez à gérer manuellement en lisant les en-têtes de la réponse a échoué et en envoyant un nouveau avec les en-têtes corrects. Voir HTTP context options pour savoir comment lire et définir les en-têtes et voir comment fonctionne le résumé dans HTTP authentication with PHP. Vous pouvez également utiliser le cURL extension ou le HTTP PECL extension.

1

tâche - ouvrir avec l'authentification http de base.

$auth_header = 'Authorization: Basic '.base64_encode("$user:$password"); 

$f = fopen($url, $open_mode,false, stream_context_create(
    'http'=>array(
     'header' => array($auth_header,$some_other_header,$some_yet_header), 
    ), 
));