B4J Question Even though the filter blocks the request, the job success ist true

schimanski

Well-Known Member
Licensed User
Longtime User
When I try to download a file form my websever with the following code, job.Success is always true, even the filter blocks the request with wrong login-data. Why is the behavior like this? My problem is, that the file in the jobDone-event is written without getting data from the server before and the file will be corrupted. Is it possible to return the success of the job as false?

Client-Code:
B4X:
Sub K_laden
    Dim K As HttpJob
    K.Initialize("K", Me)
    K.Download2(ServerPfad & "/Test/test.txt", Array As String("absender", Absender, "passwort", PasswortServer))
End Sub

Sub JobDone (Job As HttpJob) 
    Select Job.JobName
        Case "K"           
            If Job.Success=True Then
                Dim out As OutputStream
                out=File.OpenOutput(File.DirApp, "Test/test.txt", False)
                File.Copy2(Job.GetInputStream, out)
                out.Close
            Else
                Log("Error loading file!")
            End If
        End Select
End Sub


Server-Code.
B4X:
Public Sub Filter(req As ServletRequest, resp As ServletResponse) As Boolean   
    Dim In As InputStream = req.InputStream   
    Dim absender As String = req.GetParameter("absender")
    Dim passwort As String = req.GetParameter("passwort")   
    Dim Ergebnis As String
    Ergebnis = NutzerDB.CheckCredentials(absender, passwort)
    If Ergebnis <> "Zugriff gewaehrt!" Then
        If Ergebnis.Length=0 Then
            Ergebnis="Unautorisierter Zugriff!"
        End If
        resp.Write(Ergebnis)   
        Return False
    Else
        Return True
    End If
End Sub

Thanks for help...
 
Cookies are required to use this site. You must accept them to continue using the site. Learn more…