7 files management, 1 sending a file to a datalogger, Table 101. curl httpput request parameters – Campbell Scientific CR1000 Measurement and Control System User Manual
Page 391

Section 8. Operation
391
8.6.3.7 Files Management
Web API commands allow a web client to manage files on host CR1000 memory
drives. Camera image files are examples of collections often needing frequent
management.
8.6.3.7.1 Sending a File to a Datalogger
A file can be sent to the CR1000 using an HTTPPut request. Sending a file
requires a minimum .csipasswd access level of 1 (all access allowed). Unlike
other web API commands, originating a PUT request from a browser address bar
is not possible. Instead, use JavaScript within a web page or use the program
Curl.exe. Curl.exe is available in the LoggerNet RTMC program files folder or at
http://curl.haxx.se. The Curl.exe command line takes the following form
(command line parameters are described in the accompanying table):
curl -XPUT -v -S -T "filename.ext" --user username:password
http://IPAdr/drive/
Table 101. Curl HTTPPut Request Parameters
Parameter Description
-XPUT
Instructs Curl.exe to use the HTTPPut command
-v
Instructs Curl.exe to print all output to the screen
-S
Instructs Curl.exe to show errors
-T "filename.ext"
name of file to send to CR1000 (enclose in quotes)
username
user name in the .csipasswrd file
password
password in the .csipasswrd file
IPAdr
IP address of the CR1000
drive
memory drive of the CR1000
Examples:
To load an operating system to the CR1000, open a command prompt window
("DOS window") and execute the following command, as a continuous line:
curl -XPUT -v -S -T
"c:\campbellsci\lib\OperatingSystems\CR1000.Std.25.obj" --user
harrisonford:lostark1 http://192.168.24.106/cpu/
Response:
* About to connect() to 192.168.7.126 port 80 (#0)
* Trying 192.168.7.126... connected
* Connected to 192.168.7.126 (192.168.7.126) port 80 (#0)
* Server auth using Basic with user 'fredtest'
>PUT /cpu/myron%22Ecr1 HTTP/1.1
>Authorization: Basic ZGF2ZW1lZWs6d29vZnk5NTU1
>User-Agent: curl/7.21.1 (i386-pc-win32) libcurl/7.21.1
OpenSSL/0.9.8o zlib/1.2.5 libidn/1.18 libssh2/1.2.6
>Host: 192.168.7.126
>Accept:*/*
>Content-Length: 301
>Expect: 100-continue
>