lorsque je tente d'exécuter:dans Flurl J'essaie d'utiliser EnableCookies() et lancer une exception de référence null
using (var fc = new FlurlClient().EnableCookies())
{
var resp = "http://somesite.com".GetAsync();
// var getResp = await "http://api.foo.com".GetAsync();
var resultado = await resp;
var x = resultado;
}
Je reçois une exception de référence null sur EnableCookies()
pile:
en Flurl.Url.op_Implicit(Url url) en C:\Aldenteware\Flurl\code\Flurl\Url.cs:línea 315
en Flurl.Http.CookieExtensions.GetCookieContainer(FlurlClient client) en C:\Aldenteware\Flurl\code\Flurl.Http.Shared\CookieExtensions.cs:línea 145
en Flurl.Http.CookieExtensions.EnableCookies(FlurlClient client) en C:\Aldenteware\Flurl\code\Flurl.Http.Shared\CookieExtensions.cs:línea 23
en AfipProcesa.Form1.<flurlAsync>d__0.MoveNext() en c:\Users\fabian.LH\Documents\Visual Studio 2013\Projects\AfipProcesa\AfipProcesa\Form1.cs:línea 86
--- Fin del seguimiento de la pila de la ubicación anterior donde se produjo la excepción ---
en System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
en System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
en AfipProcesa.Form1.<button1_Click>d__7.MoveNext() en c:\Users\fabian.LH\Documents\Visual Studio 2013\Projects\AfipProcesa\AfipProcesa\Form1.cs:línea 119
--- Fin del seguimiento de la pila de la ubicación anterior donde se produjo la excepción ---
en System.Runtime.CompilerServices.AsyncMethodBuilderCore.<ThrowAsync>b__4(Object state)
Je dois faire quelque chose de plus ou d'une autre manière?
je l'ai mis sur un gestionnaire d'erreurs Flurl mais pas l'attraper (comme il est un ex null)
Je commence à utiliser await/async et Flurl en même temps ... désolé si je fais une erreur de base.
I en utilisant comme exemple le code sur http://tmenier.github.io/Flurl/client-lifetime/
using (var fc = new FlurlClient().EnableCookies())
{
await url
.AppendPathSegment("login")
.WithClient(fc)
.PostUrlEncodedAsync(new { user = "user", pass = "pass" });
var page = await url
.AppendPathSegment("home")
.WithClient(fc)
.GetStringAsync();
// Need to inspect the cookies? FlurlClient exposes them as a dictionary.
var sessionId = fc.Cookies["session_id"].Value;
}
merci beaucoup, ça marche maintenant, désolé de ne pas être d'une grande aide pour télécharger la source et me vérifier ce qui se passe, j'ai essayé mais j'ai vs2013, j'apprends encore tout sur httpclient et mon idée est d'utiliser flurl pour remplacer watin + IE pour automatiser la vérification automatique des mouvements bancaires chaque jour =) – FabianSilva
Pas de problème. La version 1.0 de Flurl.Http est très proche, donc je suis vraiment content que vous ayez repéré ce bug flagrant. J'ai mis à jour les docs pour refléter le work-around, au moins jusqu'à ce que je répare le bug. –