WN

WN (https://www.wn.se/forum/index.php)
-   Serversidans teknologier (https://www.wn.se/forum/forumdisplay.php?f=4)
-   -   NuSoap NetworkCredential? (https://www.wn.se/forum/showthread.php?t=1053626)

SweLogan 2012-05-31 15:32

NuSoap NetworkCredential?
 
Jag jobbar med att få upp en webservice gjord i PHP med hjälp av NuSoap. Problemet är att jag inte vet hur jag ska få in "myService.Credentials = New NetworkCredential("user", "password")" till PHP med hjälp av kanske "$_SERVER['PHP_AUTH_USER']"?

Jake.Nu 2012-05-31 15:52

PHP-kod:

<?php
if (!isset($_SERVER['PHP_AUTH_USER']) || !isset($_SERVER['PHP_AUTH_PW'])) {
    
// skicka header för inloggning
    
exit();
}
// kolla så user + pass stämmer
// ...
?>

edit: Här har du manualen också.. Alltid bästa stället att titta på när det gäller PHP: http://se2.php.net/manual/en/features.http-auth.php

SweLogan 2012-06-01 08:33

Japp, den har jag redan läst. Men problemet är att jag inte får något användarnamn eller lösenord ifrån VB.

Kod:

Dim myService As New krille.apns.hellowsdl
        myService.Credentials = New NetworkCredential("användarnamn", "password")
        myService.PreAuthenticate = True

        Me.txt_response.Text = myService.hello("Kalle")


Jake.Nu 2012-06-01 14:09

Skickar du rätt header från PHP om man inte är inloggad då?

När jag skriver SOAP-klienter i C# så gör jag som du, men använder inte "PreAuthenticate".

Kod:

ns.WebService ws = new ns.WebService();
ws.Credentials = new System.Net.NetworkCredential("username", "password");
ws.MakeFunnyRequest();


SweLogan 2012-06-01 15:34

Ska se om jag kan hitta något i headern som kommer in till NuSoap

SweLogan 2012-06-04 10:36

Behövde tydligen
Kod:

if(!isset($_SERVER['PHP_AUTH_USER']) || !isset($_SERVER['PHP_AUTH_PW'])) {
                header('WWW-Authenticate: Basic realm="Secure Area"');
                header("HTTP/1.0 401 Unauthorized");
                echo "You must enter a username and password.";
                exit;
        }


Jake.Nu 2012-06-04 16:22

Citat:

Ursprungligen postat av SweLogan (Inlägg 20441716)
Behövde tydligen
Kod:

if(!isset($_SERVER['PHP_AUTH_USER']) || !isset($_SERVER['PHP_AUTH_PW'])) {
                header('WWW-Authenticate: Basic realm="Secure Area"');
                header("HTTP/1.0 401 Unauthorized");
                echo "You must enter a username and password.";
                exit;
        }


"Behövde tydligen".. Självklart behövs det något som informerar klienten vad som gäller!


Alla tider är GMT +2. Klockan är nu 04:26.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson