clipboard-online is an application to share cilpboard text between Windows and iOS
-
Directly download
You can download latest release exe from here
-
From source code(only windows now)
Before you build, make sure you have installed golang. If not, maybe you need this
git clone git@github.com:YanxinTang/clipboard-online.git
cd clipboard-online
go get github.com/akavel/rsrc
- Build
- Bash:
./build.sh
- PowerShell:
.\build.ps1
- Bash:
- You can find release bin at
release
directory
- Run
clipboard-online
on your windows - Setup shortcuts on you iPhone/iPad (Open link from safari)
- Set ip address and authkey (default is empty string)
- Have fun...😊
-
HTTP Shortcuts: https://meta.appinn.net/t/topic/20322
-
Tasker: YanxinTang#26
Thanks for the hard working by @xiozf, @Befod and someone else contributed for the Android approach!
clipboard-online.exe
will create two file which are config.json
and log.txt
in the execute path when first running
You can make customization by editing config.json
-
port
- type:
string
- default:
"8086"
- type:
-
logLevel
- type:
string
- default:
"warning"
- values:
"panic"
,"fatal"
,"error"
,"warning"
,"info"
,"debug"
,"trace"
- type:
-
authkey
- type:
string
- default:
''
- type:
-
authkeyExpiredTimeout
- type:
int64
- default:
30
- type:
-
tempDir
- type:
string
- default:
./temp
- type:
-
reserveHistory
- type:
Boolean
- default:
false
- type:
-
notify
- type:
object
- children:
copy
- type:
Bollean
- default:
false
- type:
paste
- type:
Boolean
- default:
false
- type:
- type:
The default http server will listen 8086
port and you can't chanage that since hardcoded.
X-API-Version
: indicates version of api
X-Client-Name
: indicates name of deviceX-Auth
: hashed authkey. Value frommd5(config.authkey + timestamp/30)
Request
- URL:
/
- Method:
GET
Reponse
- Body:
json
// 200 ok
{
"type": "text",
"data": "clipboard text on the server"
}
{
"type": "file",
"data": [
{
"name": "filename",
"content": "base64 string of file bytes"
}
...
]
}
Request
-
URL:
/
-
Method:
POST
-
Headers:
X-Content-Type
: indicates type of request body contentrequired
- values:
text
,file
,media
-
Body:
json
For text:
{
"data": "text you want to set"
}
For file:
{
"data": [
{
"name": "filename",
"base64": "base64 string of file bytes"
}
]
}
Reponse
Reponse body is empty. If set successfully, status code will be 200