Interner Fehler bei nutzung Calls to the API
-
Hallo!
ich versuche die idoit.API.Client Library in Visual Studio ans Laufen zu bringen.
ich nutze .NET 4.7.2 und von der API-Library die 0.2.4.
Das ganze in Visual Studio 2017 Version 15.9.16.Diese unten stehenden Code-Zeilen (die genau zu dem Beispiel in GitHub passen) bringen einen Fehler. Auffallend ist auch, dass im GitHub-Beispiel der Parameter "ProxySettings" nicht vorkommt, er aber benötigt wird...!?!?!?
Was mache ich falsch bzw. wie bekomme ich heraus, was da nicht passt? Wenn ich mit den Credentials spiele ändern sich die Fehler so dass ich mehr oder weniger sicher bin, dass die zuletzt von mir gesetzten Anmeldeinformationen (zu denen die Fehlermeldung nach dem Code-Ausschnitt gehört) die richtigen sind...
Jede Hilfe ist mir sehr willkommen!!
Jürgen.private void button1_Click(object sender, EventArgs e)
{
ProxySettings proxySettings = new ProxySettings();
Client myClient = new Client("http://coocgnido001.coo.local/src/jsonrpc.php", "<myapikey>", "en", proxySettings);
myClient.Username = "admin";
myClient.Password = "<mypwd>";
idoit idoit = new idoit(myClient);Version response = new Version(); response = idoit.Version();
Danach geht es mit Code weiter, aber in der letzten Zeile bleibt die Ausführung mit folgendem Fehler hängen:
System.AggregateException
HResult=0x80131500
Nachricht = Mindestens ein Fehler ist aufgetreten.
Quelle = mscorlib
Stapelüberwachung:
bei System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
bei System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
bei Idoit.API.Client.Idoit.Idoit.Version()
bei iDoitClient.Form1.button1_Click(Object sender, EventArgs e) in C:\Users\pkv00014\OneDrive - Verband der Privaten Krankenversicherung e.V\Desktop\iDoitClient\iDoitClient\Form1.cs: Zeile33
bei System.Windows.Forms.Control.OnClick(EventArgs e)
bei System.Windows.Forms.Button.OnClick(EventArgs e)
bei System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
bei System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
bei System.Windows.Forms.Control.WndProc(Message& m)
bei System.Windows.Forms.ButtonBase.WndProc(Message& m)
bei System.Windows.Forms.Button.WndProc(Message& m)
bei System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
bei System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
bei System.Windows.Forms.NativeWindow.DebuggableCallback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
bei System.Windows.Forms.UnsafeNativeMethods.DispatchMessageW(MSG& msg)
bei System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(IntPtr dwComponentID, Int32 reason, Int32 pvLoopData)
bei System.Windows.Forms.Application.ThreadContext.RunMessageLoopInner(Int32 reason, ApplicationContext context)
bei System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
bei System.Windows.Forms.Application.Run(Form mainForm)
bei iDoitClient.Program.Main() in C:\Users\pkv00014\OneDrive - Verband der Privaten Krankenversicherung e.V\Desktop\iDoitClient\iDoitClient\Program.cs: Zeile19Innere Ausnahme 1:
AggregateException: Mindestens ein Fehler ist aufgetreten.Innere Ausnahme 2:
JsonRpcClientException: The service response is invalidInnere Ausnahme 3:
JsonRpcSerializationException: The response error code is invalidInnere Ausnahme 4:
ArgumentOutOfRangeException: The specified error code is outside the allowable range
Parametername: code
Der tatsächliche Wert war -32604. -
Hallo @juergen-mnich,
ich vermute, dass du diese Library verwendest, welche aktuell von einem unserer Kollegen gepflegt wird: https://github.com/OKT90/Idoit.API.Client
Was ich dir lediglich auf Grundlage des StackTraces sagen kann ist folgendes:
Der Error-Code "-32604" weist auf ein Problem bei der Authentifizierung hin.
Könntest du bitte sicherstellen, dass die Credentials und auch der API-Key korrekt sind. Eventuell kannst du hierzu den PHP-Client von Benjamin Heisig verwenden oder aber einen simplen HTTP-Client.
Der PHP-Client ist hier zu finden.
Viele Grüße
Selcuk