Shell-Script Beispiel
  • Help-Desk
  • Über uns
  • Kontakt
  • FAQ
  • de
  • en
  • Leistungen
  • Direkter Handel
    • Für Verkäufer
    • Für Einkäufer
  • Konditionen
  • Magazin
Shell-Script Beispiel
  • Start
  • Help-Desk
  • Datenübertragung
  • Shell-Script Beispiel

Erste Schritte  Handeln  Datenübertragung Problemlösung

In diesem Abschnitt findest du Information zu

  1. Code Block Beispiel Shell-Script

Codeblock Beispiel Shell-Script

automaticUploadBearingx.sh

#!/bin/bash

export PROTOCOL="https"
export BASE_URL='ponton.dev.bearingx.io'
export USERNAME='dev'
export PASSWORD='test'
export FILENAME='./bearingx_upload.csv'
export WORKDIR='./'

cleanup() {
echo "Cleaning up..."
rm bearingx_cookie.txt
exit
}

success() {
echo "Upload successfully done!"
cleanup
}

error() {
echo "Upload failed!"
cleanup
}

echo "Starting automatic upload..."
cd $WORKDIR || error

echo "Logging in as '${USERNAME}' and saving cookie"
curl "${PROTOCOL}://${BASE_URL}/login" \
-H "authority: ${BASE_URL}" \
-H 'cache-control: max-age=0' \
-H 'upgrade-insecure-requests: 1' \
-H "origin: ${PROTOCOL}://${BASE_URL}" \
-H 'content-type: application/x-www-form-urlencoded' \
-H 'accept: text/html,application/xhtml+xml,application/xml;q=0.9,im-
age/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9'
\
-H 'sec-fetch-site: same-origin' \
-H 'sec-fetch-mode: navigate' \
-H 'sec-fetch-user: ?1' \
-H 'sec-fetch-dest: document' \
-H 'accept-language: de-DE,de;q=0.9,en-US;q=0.8,en;q=0.7' \
--data-raw "username=${USERNAME}&password=${PASSWORD}" \
--compressed \
-c "bearingx_cookie.txt" \
--silent \
|| error

echo "Uploading file '${FILENAME}'"

responseCode=$(curl --write-out "%{http_code}\\n" "${PROTO-
COL}://${BASE_URL}/api/orders/upload" \
-H "authority: ${BASE_URL}" \
-H 'accept: application/hal+json' \
-H "origin: ${PROTOCOL}://${BASE_URL}" \
-H 'sec-fetch-site: same-origin' \
-H 'sec-fetch-mode: cors' \
-H 'sec-fetch-dest: empty' \
-H 'accept-language: de-DE,de;q=0.9,en-US;q=0.8,en;q=0.7' \
-F "file=@${FILENAME}" \
--compressed \
-b "bearingx_cookie.txt" \
--output "/dev/null" \
--silent) \
|| error

# http response code should start with 20
if [[ "$responseCode" != 20* ]]
then
echo "Return code: ${responseCode}"
error
fi

success


Wie funktionieren die Skripte?

Die folgende Beschreibung basiert auf dem mitgelieferten Skript 'automaticUploadBearingx.sh'. Das Skript ist nur ein Beispiel dafür, wie ein Upload möglich ist.

Variable

PROTOCOL

Beschreibung

das zu verwendende Webprotokoll (mögliche Werte sind _http_ oder _https_, sollte normalerweise _https_ sein)


BASE_URL

Unter dieser URL erreichen Sie Ihre Rest Facade. In diesem Beispiel zeigt sie auf die Entwicklungsumgebung von BEARING X. Für die Produktivumgebungen sollte sie lauten [Ihr Firmenname].app.bearingx.io



FILENAME

Ist der Pfad und Name der hochzuladenden Datei. Diese Datei sollte den gleichen Regeln folgen, die bereits für den manuellen Upload über die Schaltfläche "CSV hochladen" in BEARING X gelten.


WORKDIR

Das Skript ruft die Restfassade über einfache curl-Befehle auf. Der erste curl-Befehl erstellt ein Login
und speichert das erstellte Cookie in einer Datei zur weiteren Verwendung. Diese Datei sollte sich direkt
neben dem Skript befinden und heißt _'bearingx-cookie.txt'_. Es sollte daran gedacht werden, dieses
Cookie zu löschen, sobald das Skript fertig ist. Der nächste curl-Befehl verwendet das im ersten Schritt
erstellte Cookie, um den Upload-Aufruf zu authentifizieren. Der zweite curl-Befehl ruft _'/api/or-
ders/upload'_
der Rest-Facade auf und hängt die hochzuladende Datei an den Aufruf an.


Das Shell-Skript muss UNIX-Zeilenenden haben, um korrekt zu funktionieren (die "-H [...]-Befehle wur-
den zur besseren Lesbarkeit in neue Zeilen verschoben, gehören aber immer noch zum obigen Befehl).

 


<- zurück zu Datenübertragung

Teste BEARING X jetzt und erlebe, wie schnell und bequem digitaler Direkthandel von Wälzlagern ist.

Jetzt ausprobieren

 

 

 

  • Leistungen
  • Direkter Handel
  • Konditionen
  • Magazin
  • Help-Desk
  • Über uns
  • Kontakt
  • FAQ
  • Datenschutz
  • Nutzungsvereinbarung der Handelsplattform
  • Datenschutz der Handelsplattform
  • Impressum
  • Gender-Hinweis
Wie können wir dir helfen?

Ruf uns jetzt an: (+49) 421 32254350
Schreib uns: