Página 1 de 2

Função em javaScript

Enviado: 29 Out 2024 17:16
por Poka
Boa tarde,

Fazendo aqui um site, com html, css e javaScript, até aí tudo bem, já estou pegando o jeito e entendendo um pouco como funciona, estou parado numa dúvida para pegar um arquivo texto do meu computador.

URL = "https://dummyjson.com/products"
essa URL tem como exemplo na internet para teste.

usando a função fetch(URL) do JavaScript, me retorna o arquivo texto dessa URL .

como colocaria a URL do meu computador para pegar o arquivo do meu computador?
Não tenho site nem domínio ainda, já tentei de todo jeito.
Não sei se consegui explicar direito.

Meu arquivo teste.txt está em c:\gelic_web
se alguém puder me dar uma dica, agradeço.



Poka

Função em javaScript

Enviado: 29 Out 2024 18:51
por Itamar M. Lins Jr.
Olá!
Não sei se entendi.
Mas usamos a tag <FORM> para pegar ou enviar dados.
https://www.w3schools.com/howto/tryit.a ... oad_button

Vê se é isso ai que procura.

Saudações,
Itamar M. Lins Jr.

Função em javaScript

Enviado: 29 Out 2024 19:21
por Itamar M. Lins Jr.
Olá!
Tô lendo aqui, não conhecia esse tal FETCH()
https://www.devmedia.com.br/javascript-fetch/41206
Ele faz também, no caso vc coloca http://localhost ai no seu, mas precisa do servidor APACHE/NGINX...
Onde estão suas paginas ? se local é 127.0.0.1 que é o mesmo localhost.

Saudações,
Itamar M. Lins Jr.

Função em javaScript

Enviado: 29 Out 2024 21:47
por Poka
Itamar
Obrigado por responder, aliás vc me incentivou bastante há dois anos dizendo para estudar HTML ,javascript, css, só ouvia falar em PHP, NODES, e tantas outras, inclusive gente querendo sair do harbour para outra linguagem para funcionar na internet, e vc dizia que nenhum sistema funcionava na internet, a internet só conhece HTML , e é verdade, inclusive uma rotina que vc passou pegando do sistema e passando para html, ficou jóia (lista de precos, clientes, qq coisa), dá pra fazer praticamente automático para HTML. Agora to pegando firme, lendo, lendo, testando, imprimindo apostila e tá saindo.
É o seguinte, qual a minha ideia, praticamente não vou trabalhar com banco de dados para pegar dados e retornar para a internet, vou trabalhar somente com arquivos textos para sintonizar com a internet.
Minha filha tem uma loja de roupas para bebê, e ela vende também pelo watzap.
Eu quero fazer um esquema como força de vendas, o esquema seria assim,
Tenho o sistema feito harbour/firebird como sistema BASE, vai ter cadastro de produtos, clientes, grupos de produtos, pedidos (que vem da internet), nada de contas a receber, pagar, só relatorios de vendas (da internet) e o controle dos pedidos. quando for feito o pedido na internet, imprimo e a partir daí a venda é pelo watzap.
Iria funcionar mais ou menos assim.
Minha filha tira as fotos do que vai para a internet, copia para o computador ( as fotos vão para users\downloads.
Esses produtos já estão cadastados no sistema base
O sistema base pega essas fotos, mostra na tela, ela associa com o codigo do produto e renomeio a foto já com o codigo do produto (que vai ser mostrado na internet)
os arquivos textos que vão compor o esquema serão:
produtos.txt , gerado da base, com preço de venda, codigo do produto, etc
clientes.txt, de inicio vai estar vazio, conforme entrar pedido vou alimentando. (esse vem do formulario da internet FORM ) para gravar do formulario para o clientes.txt deu trabalho. mas já está resolvido.
Do formulario de pedidos alem de alimentar clientes.txt, tambem vou alimentar o PEDIDO.TXT.
Quando, no formulario, escolher o produto , vou ter que pegar os dados do produto( que estão em produtos.txt), mas aí o form não faz, o FETCH faz isso, já consegui aqui, mas com URL como postei antes, precisava da URL do meu computador ( não sei se preciso ter site e dominio para isso, vou , contrtatar por esse dias, preciso ver qual é mais viável).
tendo esses txt em mãos, trabalhar com as strings para pegar preco atualizar o estoque, tudo atualizando o txt com o javascript. Já vi os comandos de string do javascript.
quando executar o sistema base,pego os dados do pedidos .txt, clientes.txt e gravo no sistema base, e atualizo o cliente.txt, pois quando um cliente que já tem cadastro, vou buscar em cliente.txt.
Tá faltando então, essa URL para pegar do meu computador, se é que tem jeito, mas vou ver uma hospedagem de site e dominio, acredito que daí pega o arquivo texto sem problemas.

Código: Selecionar todos

Mas usamos a tag <FORM> para pegar ou enviar dados.
acredito que o form grava no computador, ja resolvi, agora preciso pegar do txt e gravar no formulario, imagina quando o cliente digita o codigo do produto e eu preciso ler o txt ( ja fiz com o FETCH, com a url que passei acima como teste, queria pegar do meu computador, não adianta eu colocar na url c:\minhapasta\meutxt.txt

Poka

Função em javaScript

Enviado: 30 Out 2024 08:27
por Itamar M. Lins Jr.
Olá!
Então é isso.
O fetch() pega jSon, XML, etc solicitando de um servidor REST ou REST FULL(ainda não trabalhei com isso) só leio.
No caso de pegar do seu CPU precisa ABRIR AS PORTAS DO ROTEADOR (FIBRA ?) ,etc. Ter um dominio ABERTO NA INTERNET (perigoso) por conta das vulnerabilidades do WIndows... e o SERVIDOR(apache,etc) ai no seu micro, JOGANDO as solicitações para quem pede.
É o que entendi do FETCH() do exemplo que passou.
Essa URL de testes, tem um servidor por trás(apache, etc...)
Eu sei que o Harbour cria o SERVIDOR REST FULL, entretanto, não estou familiarizado com esses processos.
Tem uns vídeos do THE FULL(Rafa Carmona) explicando como fazer inclusive com códigos.

Saudações,
Itamar M. Lins Jr.

Função em javaScript

Enviado: 30 Out 2024 08:48
por Itamar M. Lins Jr.
Olá!
Estava pensando aqui, com o uHTTPD, vc faz isso tudo, usando só códigos do Harbour.
Estou desenvolvendo um APP, para um grupo de pessoas, usando ele(uHTTPD).
Tá na pasta EXTRAS do Harbour.

Coisa simples, sem muita exigência de processamento.

Tinha feito um para advogados, com agenda, upload de docs... Mas fiz mais para testes e aprendizado.

Dá uma olhada no uHTTPD, vc programa TUDO em PRG e GERA HRB(compilado) direto na pasta cgi-bin(dele) fica muito bom também.

Saudações,
Itamar M. Lins Jr.

Função em javaScript

Enviado: 30 Out 2024 08:56
por Itamar M. Lins Jr.
Olá!
Um exemplo de como é o uHTTPD.

Código: Selecionar todos

REQUEST DBFNTX, DBFCDX, DBFFPT, DBFDBT
REQUEST HB_LANG_PT, HB_CODEPAGE_PTISO, HB_CODEPAGE_PT850, HB_CODEPAGE_UTF8EX

#xcommand TEXT TO VAR <var> => #pragma __stream|<var>:=%s           
#xcommand ENDTEXT => #pragma __endtext
MEMVAR cTable
FUNCTION HRBMAIN(...) //Posso passar por aqui parametros ou usar PARAMETERS do antigo CLIPPER....
LOCAL cCodigo := AllTrim(uhttpd_GetField( "cCodigo" ))
LOCAL cPathDados := "\GrupoWEB\dados\", lShared := .T., nTotal := 0
PRIVATE cTable := ""
RddSetDefault("DBFCDX")
SET EXCLUSIVE OFF
SET DELETED ON
SET DATE FORMAT TO "dd/mm/yy" 
hb_cdpSelect("PTISO")
hb_langSelect("PT")

IF AbreDb(cPathDados + 'receber.dbf', 're', lShared, cPathDados)
ELSE
   RETURN WebErro("Erro abrindo o arquivo de contas a receber")
ENDIF
cQuery := 'codigo == "' + cCodigo + '"'
cHora := StrTran(Time(),":","") ; cTag := 'TMP'+cHora

Index on codigo+DToS(Vencimento) tag &cTag FOR &cQuery TEMPORARY 
 
cTable := '<table><tr><thead><th>Descrição.</th><th>Vencimento</th><th>Valor</th></thead></tr>'
re->(dbGoTop())
DO WHILE re->(!Eof())
   cTable += '<tr><td>' + re->descricao + '</td><td align="center">' + DToC(re->vencimento) + ;
             '</td><td align="right">' + Transform(re->valor,"@e 9,999,999.99") + '</td></tr>'
   nTotal += re->valor         
   re->(dbSkip())
ENDDO
FechaDb('re')

cTable += '<tfoot'
cTable += '<tr><td colspan="2">Total:</td>' + ;
          '<td align="right">' + Transform(nTotal,"@e 9,999,999.99") + '</td></tr></tfoot>'
cTable += '</table>'

TEXT TO VAR cHtml

<!DOCTYPE html>
<html>
<head>
<meta charset="WINDOWS-1252">
<meta name="viewport" content="width=device-width, initial-scale=1">
<style>
thead {color:green;}
tbody {color:white;}
tfoot {color:red;}
</style>
</head>
<body>

&cTable

</body></html>

ENDTEXT

SET PROCEDURE TO "funcoes.prg"

RETURN cHtml
O HTML tem a tag <a href> ou outra <button> etc. para esse cgi em Harbour, substituindo o PHP, Python...

Isso ai é Harbour + HTML + CSS + JavaSCRIPT...TUDO JUNTO NO PRG! Posso deixar o PRG puro ou compilado HRB.
Veja que GERA O HTML (On the fly) direto na PORTA(Socket) 8082(padrão dele) ou 80 porta comum dos navegadores(tem um arquivo .ini para configurar )

Saudações,
Itamar M. Lins Jr.

Função em javaScript

Enviado: 30 Out 2024 09:02
por Poka
Bom dia

Itamar,

<script>
const URL = "https://dummyjson.com/products";
async function chamarApi() {
const resp = await fetch(URL);
if (resp.status === 200) {
const obj= await resp.text();
console.log(obj);
alert (obj) // coloquei alert aqui, console não aparecia nada
// o console já era para mostrar
}
chamarApi();
</script>

esta rotina já me devolve arquivo texto(resp.text() acima)
ela devolve em outros tipos tambem sem ser texto,
resp.text() retorna texto
resp.clone() clone da resposta da requisição
resp.json() formato JSON
resp.redirect() cria uma nova resposta com uma URL diferente
resp.formData() retorna objeto da requisição como objeto do tipo FormData
resp.arrayBuffer() retorna um ArrayBuffer
resp.blob() retorn como um blob

Não tenho nada instalado aqui diferente, nossa, vi uns vinte exemplos, algun bem dificil de entender
e não funcionava, precisava de php e outras coisas mais, este ´bem simples e pelo jeito vai resolver o que preciso
Não quero mexer com PHB essa coisas, só se realmente aparecer alguma coisa mesmo que precise, mas pelo que tenho
pesquisado , lido , html, css e javascript dá pra fazer quase tudo.

Creio que preciso de uma hospedagem de site e dominio, para realmente fazer um teste, já estou providenciando
um, já vi alguns, tem que ser barato, é coisa pequena, em tempo, sabe se tem algum bom para indicar?

Itamar, experimenta testar aí, com essa URL, e tenta depois pegar um TXT do seu computador, mudando a URL se for possível, pra ver se funciona.
Obrigado


Poka

Função em javaScript

Enviado: 30 Out 2024 09:10
por Poka
Itamar


Vou dar uma olhada, no seu código aqui, peguei um seu aqui há algum tempo, da pra criar HTML tranquilo á partir de qualquer relatório,

Obrigado


Poka

Função em javaScript

Enviado: 30 Out 2024 09:11
por Itamar M. Lins Jr.
Olá!
renomeio a foto já com o código do produto
Essa parte, vc salva no banco de dados sem precisar RENOMEAR. Pq vai tudo junto na base da dados.
Estou usando só rotinas do Harbour.
Eu uso DBF + FPT para isso.
Não entendi como a pessoa vê os produtos.
Quando vc gerar o HTML, ele mesmo descompacta a FOTO em algum lugar e faz referência...
Ou quando salvar na base de dados já troca o nome, evitando renomear(acesso humano) pode errar e a foto não aparecer.

Saudações,
Itamar M. Lins Jr.

Função em javaScript

Enviado: 30 Out 2024 09:16
por Itamar M. Lins Jr.
Olá!
experimenta testar aí
Cadê o código HTML que chama essa função ?
Eu também sou aprendiz... !!! Tem muita coisa para estudar!

Saudações,
Itamar M. Lins Jr.

Função em javaScript

Enviado: 30 Out 2024 10:36
por Itamar M. Lins Jr.
Olá!
Entendi, na ultima linha, ela mesmo se auto executa.

Saudações,
Itamar M. Lins Jr.

Função em javaScript

Enviado: 30 Out 2024 11:21
por JoséQuintas
Acho que confundiu aí no começo.

Se vai hospedar na internet, não tem que pegar arquivos do seu computador, seu computador é que vai enviar pra internet e/ou coletar.

Na internet veja como vai fazer, se acessar de uma base de dados, o aplicativo poderia atualizar a base de dados.

Talvez interessante colocar prazo de validade, caso deixe de atualizar, e os preços fiquem fora da realidade.

Quanto à programação disso, não posso ajudar, não é minha área.

Função em javaScript

Enviado: 06 Nov 2024 11:19
por Poka
Olá à todos,

Itamar disse

Código: Selecionar todos

Essa URL de testes, tem um servidor por trás(apache, etc...)
Procurando e pesquisando consegui instalar o XAMPP com Apache, já tinha lido sobre ele uma vez, ele cria um site, cria até um domínio, bom para testar, assim não preciso de um site e domínio no momento, pois eu não sabia se tinha como testar, assim particular, mas com o xampp , dá para testar e só por em prática, depois de testado.
Agora é por a mão na massa.


abraço
Poka

Função em javaScript

Enviado: 06 Nov 2024 13:16
por Itamar M. Lins Jr.
Olá!
É isso mesmo. Todo mundo faz assim.
Ai libera PHP, e outras coisas.
Mas o Harbour pode fazer isso com uHTTPD -> Apache
De uma forma ou de outra é aprendizado e vai servir para sempre.

Saudações,
Itamar M. Lins Jr.