JSON-RPC Zugang

Hi,
ich versuche gerade die Json-Rpc Api zu testen aber ich bekomme immer „Falscher Username/Passwort“.
Kann es daran liegen das mein Lizenz-Username eine @ beinhaltet? Ich habs mit %40 probiert aber klappt auch nicht.
Auch per Base64 im Header mit „Authorization: Basic XXXXXXX“ klappt es leider nicht.

Aktiviert habe ich den Remote Zugang natürlich und das Passwort hab ich auch mehrfach neu gesetzt zum Testen.

Vielleicht hat ja jemand einen Tipp, Danke :wink:
Gruß

Das geht auch mit dem @ im usernamen. Das haben wir alle.
in meinem API Wrapper verwende ich das so
PHP:


$content=json_encode($rpc);
$header=array('Authorization: Basic '. base64_encode($this->user.":".$this->password),
				  'Content-type: application/json; charset=utf-8');
$result = file_get_contents($this->url, false, stream_context_create(
	    array('http' => array(
		'method'  => 'POST',
	        'header'  => $header,
	        'content' => $content
		)
	    )
));

in Perl:

my $user=$this->getUsername;
	my $pass=$this->getPassword;
	my $auth=encode_base64($user. ':' . $pass );
	my $json=JSON->new();
	#http headers
	my $headers = { 'Accept' =>'application/json',
			'Content-type'=> 'application/json; charset=utf-8',
			'Authorization' => 'Basic '.$auth  };
	#api function definition
	my $rpc = {
         "jsonrpc" => "2.0",
         "method" => $method,
         "params" => \@arguments,
         "id" => "null"
	};
	#reset error
	$this->setError(undef);
	#build json string
	my $params=$json->encode($rpc);
	#build query object
	my $client = REST::Client->new();
	$client->setTimeout($this->getTimeout);
	#action
	$client->POST( $this->getUrl , $params , $headers );

HTH

Tommi

Hi, riesen Dank.
Hatte wohl ein Tippfehler im Authorize Header, nach dem kopieren deiner Vorlage hat es geklappt.
Gruß und schön 3. Advent :wink: