Hola buenos días de nuevo
Podemos hacer peticiones de tipo POST desde webview?
Petición POST webview
- leandro
- Posts: 1744
- Joined: Wed Oct 26, 2005 2:49 pm
- Location: Colombia
- Has thanked: 34 times
- Been thanked: 10 times
- Contact:
Petición POST webview
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com
[ Turbo Incremental Link64 6.98 Embarcadero 7.70 ] [ FiveWin 24.09 ] [ xHarbour 64 bits) ]
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com
[ Turbo Incremental Link64 6.98 Embarcadero 7.70 ] [ FiveWin 24.09 ] [ xHarbour 64 bits) ]
- Antonio Linares
- Site Admin
- Posts: 42513
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Has thanked: 31 times
- Been thanked: 73 times
- Contact:
Re: Petición POST webview
Estimado Arevalo,
El ejemplo webviewlogin.prg realiza una petición tipo POST al identificar al usuario, te refieres a eso ?
El ejemplo webviewlogin.prg realiza una petición tipo POST al identificar al usuario, te refieres a eso ?
- leandro
- Posts: 1744
- Joined: Wed Oct 26, 2005 2:49 pm
- Location: Colombia
- Has thanked: 34 times
- Been thanked: 10 times
- Contact:
Re: Petición POST webview
Antonio buenas noches, gracias por responder
No, me refería a eso, lo que pasa es que necesito pasar a una dirección web, un json demasiado grande y por GET el servidor me dice que no esta permitido por que la url es demasiado larga, entonces pensé que envés de enviarlo por GET, pueda enviar mencionado archivo al servidor mediante una petición POST.
Espero hacerme entender,
de antemano gracias
No, me refería a eso, lo que pasa es que necesito pasar a una dirección web, un json demasiado grande y por GET el servidor me dice que no esta permitido por que la url es demasiado larga, entonces pensé que envés de enviarlo por GET, pueda enviar mencionado archivo al servidor mediante una petición POST.
Espero hacerme entender,
de antemano gracias
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com
[ Turbo Incremental Link64 6.98 Embarcadero 7.70 ] [ FiveWin 24.09 ] [ xHarbour 64 bits) ]
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com
[ Turbo Incremental Link64 6.98 Embarcadero 7.70 ] [ FiveWin 24.09 ] [ xHarbour 64 bits) ]
- Antonio Linares
- Site Admin
- Posts: 42513
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Has thanked: 31 times
- Been thanked: 73 times
- Contact:
- leandro
- Posts: 1744
- Joined: Wed Oct 26, 2005 2:49 pm
- Location: Colombia
- Has thanked: 34 times
- Been thanked: 10 times
- Contact:
Re: Petición POST webview
Si en algún momento lo intentamos, pero desafortunadamente no funciona con xharbour.Has considerado usar Curl ?
Antonio, lo que pasa es que necesito enviarle cierta información al servidor, para que haga un proceso y me devuelva otra información y mostrarla después de procesada en el webview.
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com
[ Turbo Incremental Link64 6.98 Embarcadero 7.70 ] [ FiveWin 24.09 ] [ xHarbour 64 bits) ]
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com
[ Turbo Incremental Link64 6.98 Embarcadero 7.70 ] [ FiveWin 24.09 ] [ xHarbour 64 bits) ]
- cmsoft
- Posts: 1297
- Joined: Wed Nov 16, 2005 9:14 pm
- Location: Mercedes - Bs As. Argentina
- Been thanked: 2 times
Re: Petición POST webview
Leandro:
Puedes tambien enviar mediante el objet Createobject("MSXML2.ServerXMLHTTP") y luego leer por get la informacion deseada, pero ahi tienes que tener el control del servidor web y de tu aplicacion, pero creo por lo que lei antes que ese es tu caso
Puedes tambien enviar mediante el objet Createobject("MSXML2.ServerXMLHTTP") y luego leer por get la informacion deseada, pero ahi tienes que tener el control del servidor web y de tu aplicacion, pero creo por lo que lei antes que ese es tu caso
- leandro
- Posts: 1744
- Joined: Wed Oct 26, 2005 2:49 pm
- Location: Colombia
- Has thanked: 34 times
- Been thanked: 10 times
- Contact:
Re: Petición POST webview
Cesar gracias por responder
Pues es que por GET lo estamos haciendo de momento, pero como mencione anteriormente, el problema es que el servidor (si tenemos el control) nos dice que la url es demasiado larga.
Pues es que por GET lo estamos haciendo de momento, pero como mencione anteriormente, el problema es que el servidor (si tenemos el control) nos dice que la url es demasiado larga.
Code: Select all | Expand
cEp := hb_jsonEncode( RsToHash( oRsEp ) )
cEp := hb_base64encode(cEp,len(cEp))
oWebVwLg := TWebView():New(, oWid:hWnd )
oWebVwLg:Navigate( "https://nuestraurl/index?aep="+cEp ) //ESTA CADENA PUEDE SER DEMASIADO LARGA, "CREO" QUE SI LA ENVIAMOS POR POST NO VAMOS A TENER PROBLEMAS CON EL TAMAÑO
oWebVwLg:SetUserAgent( "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.5060.53 Mobile Safari/537.36" )
oWebVwLg:Bind( "SendToFWH" )
oWebVwLg:bOnBind = { | cJson, cCalls | EVAL(cbLog, cJson ) }
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com
[ Turbo Incremental Link64 6.98 Embarcadero 7.70 ] [ FiveWin 24.09 ] [ xHarbour 64 bits) ]
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com
[ Turbo Incremental Link64 6.98 Embarcadero 7.70 ] [ FiveWin 24.09 ] [ xHarbour 64 bits) ]
- cmsoft
- Posts: 1297
- Joined: Wed Nov 16, 2005 9:14 pm
- Location: Mercedes - Bs As. Argentina
- Been thanked: 2 times
Re: Petición POST webview
Leandro:
Yo digo algo asi
Entonces, en tu servidor espera en la ruta miapi un formulario tipo post que hace un proceso con los datos que le pasas en aRecord
Y luego en tu servidor, en la ruta vista, busca esos datos que ya se guardaron en el servidor y los procesa para mostrarlos
No se si fui claro
Yo digo algo asi
Code: Select all | Expand
STATIC oOle
FUNCTION Main()
LOCAL aRecord, cJson
oOle := Createobject("MSXML2.ServerXMLHTTP")
aRecord := hash()
aRecord["ID"] = 1
aRecord["DATO2"] = "MIDATO2"
aRecord["DATO3"] = "MIDATO3"
cJson := hb_jsonEncode(aRecord,.f.)
SendPostToUrl( "https://nuestraurl/miapi", cJson, "application/json")
oWebVwLg := TWebView():New(, oWid:hWnd )
oWebVwLg:Navigate( "https://nuestraurl/vista?ID="+aRecord["ID"] )
RETURN nil
STATIC Function SendPostToUrl( cUrl, cParams,cContentType,cAuthorization )
Local cRet:="",uRet
default cContentType:="application/json"
default cAuthorization:=""
oOle:Open( 'POST', cUrl, .f. )
oOle:SetRequestHeader( "Content-Type",cContentType)
if !empty(cAuthorization)
oOle:SetRequestHeader( "Authorization",cAuthorization)
end if
oOle:Send( cParams )
//SysRefresh()
cRet:=""
IF !oOle:ResponseBody = NIL
hb_jsonDecode(oOle:ResponseBody,@cRet)
ELSE
cRet := oOle:ResponseText
ENDIF
Return cRet
Y luego en tu servidor, en la ruta vista, busca esos datos que ya se guardaron en el servidor y los procesa para mostrarlos
No se si fui claro