Jak wysłać request HTTP?

Jak wysłać request HTTP?
PI
  • Rejestracja:około 9 lat
  • Ostatnio:3 dni
  • Postów:113
0

Witam próbuje zmodyfkować kod aplikacji USBTERMINAL do obsługi danych z USB, tak aby w momencie przyciśnięcia przycisku na wadze elektronicznej wykonać prosty request GET na adres z danymi z wagi na adres https://localhot/danzwagi=$tekst

W momencie wciśnięcia przycisku na wadze użytkownikowi zostaje wyświetlone dane w postaci tekstu, nie potrafię odnaleźć w kodzie w którym miejscu te dane są wyświetlana aby zmodyfikowac dodatkowo kod i tak wykonać requesta.

Bardzo proszę o podpowiedź

Kod do aplikacji: https://github.com/liorhass/UsbTerminal

image

edytowany 3x, ostatnio: Riddle
Riddle
Administrator
  • Rejestracja:prawie 15 lat
  • Ostatnio:11 minut
  • Lokalizacja:Koszalin
  • Postów:10094
0

Pokaż już kod który napisałeś który wysyła żądanie HTTP.

PI
  • Rejestracja:około 9 lat
  • Ostatnio:3 dni
  • Postów:113
0
Kopiuj
import java.net.HttpURLConnection
import java.net.URL

fun getRequest(text: String) {
    val url = URL("https://localhost/test?text=$text")
    val connection = url.openConnection() as HttpURLConnection
    connection.requestMethod = "GET"
    connection.connectTimeout = 5000
    connection.readTimeout = 5000
    val responseCode = connection.responseCode
    if (responseCode == HttpURLConnection.HTTP_OK) {

    } else {

    }
    connection.disconnect()
}
edytowany 2x, ostatnio: Riddle
nie100sowny
  • Rejestracja:około 9 lat
  • Ostatnio:około 20 godzin
  • Lokalizacja:Kraków
  • Postów:402
0

"Gdy się nie wie, co się robi, to się dzieją takie rzeczy, że się nie wie, co się dzieje"
Roman Mokrzan
  • Rejestracja:ponad 5 lat
  • Ostatnio:minuta
  • Postów:159
0

Jbc to nie ten dzial. Jak już to mobile.


PI
  • Rejestracja:około 9 lat
  • Ostatnio:3 dni
  • Postów:113
0
Kopiuj
/app/src/main/java/com/liorhass/android/usbterminal/free/main/ScreenTextModelStateMachine.kt

Kopiuj
    fun onNewByte(byte: Byte, dataWasAlreadyProcessed: Boolean, result: CharArray): Int {


        val c = iso_8859_1[byte.toUByte().toInt()]  // Byte to char with specific encoding

        return when (state) {
            StateOfStateMachine.IDLE -> {
                if (c.code >= 32) {
                    // The vast majority of received bytes fall here ("regular" chars). As an
                    // optimization, we do without the call to onNewCharWhenIdle() by
                    // handling it here.
                    result[0] = c
                    1
                } else {
                    onNewControlCharWhenIdle(c, result)
                }
            }
            StateOfStateMachine.RECEIVED_ESC -> onNewCharWhenReceivedEsc(c, result)
            StateOfStateMachine.RECEIVED_ESC_AND_BRACKET -> onNewCharWhenReceivedEscAndBracket(c, dataWasAlreadyProcessed, result)
        }
    }

przed zmienną c , dopisałem

Kopiuj
var curentTime = System.currentTimeMillis()

skorzystałem z biblioteki fuel http i działa!

Kopiuj
get: https / ? c=c & curenttime=currenttime
edytowany 7x, ostatnio: Pitasato

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.