-
Notifications
You must be signed in to change notification settings - Fork 0
API UO HTTP_Get ja
Русский · English · Українська · Deutsch · Français · Italiano · Español · 繁體中文 · 日本語 · 한국어
UO.HTTP_Get · UO.HTTP_Post · UO.HTTP_Body · UO.HTTP_Header
ClassicUO • Runtime API
HTTP/HTTPS で設定やファイルを取得します。取得内容の実行やゲーム接続の操作は行いません。
UO.HTTP_Get(URL:Any) -> Unit
UO.HTTP_Get(URL:Any, LStream:Any) -> Unit
-
URL— 必須の String。完全な http:// または https:// アドレスです。プロセスの通常のネットワークを使用し、プロファイルのゲーム用プロキシは使いません。ゲームへの接続は不要です。 -
LStream— 省略可能な MemoryStream() または File(path)。省略、0、Nothing は HTTP_Body() で読む文字列形式です。バイト列で全内容を置き換え、MemoryStream の位置は 0 に戻ります。File はファイルを上書きし、親フォルダーは必要です。他の型は送信前にエラーになります。
Unit:値を返しません。Boolean、ID、バイト数ではありません。文字列は HTTP_Body()、バイト列はストリームから読みます。
- 応答はこのスクリプトの runtime に属します。その次の GET/POST が置き換え、他のスクリプトは変更しません。プロファイルには保存されません。古い応答が必要なら先に変数へコピーします。
- GET/POST はスクリプトのスレッドで待機し、要求と本文読取全体で 20 秒が期限です。停止すると待機を取り消します。Body/Header は待機しません。File 指定でも本文全体をメモリーに読み込みます。
- charset で復号し、未指定・未知なら UTF-8 を使います。4xx/5xx の本文も読みます。通信エラー・タイムアウトはエラー表示と本文・ヘッダーの消去になります。Try/Catch は応答検証の代用ではありません。停止は伝播し、ローカル書込・引数エラーは捕捉できます。
- 通常の GET は文字列とヘッダーを保存し、ストリーム GET はバイト列とヘッダーを保存して HTTP_Body を空にします。空応答・通信エラーでもストリームを空にします。重要なファイルは先にメモリーで取得・検証してください。
実際のクライアント処理段階で、追加命令ではありません。GET/POST が HttpRequest を呼び、Body/Header は runtime 内の結果を読むだけです。
通常の GET は文字列とヘッダーを保存し、ストリーム GET はバイト列とヘッダーを保存して HTTP_Body を空にします。空応答・通信エラーでもストリームを空にします。重要なファイルは先にメモリーで取得・検証してください。
Unit:値を返しません。Boolean、ID、バイト数ではありません。文字列は HTTP_Body()、バイト列はストリームから読みます。
プロジェクトのソース: external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs; 関数 ExecuteClientApiCompatibility.
GET/POST はスクリプトのスレッドで待機し、要求と本文読取全体で 20 秒が期限です。停止すると待機を取り消します。Body/Header は待機しません。File 指定でも本文全体をメモリーに読み込みます。
charset で復号し、未指定・未知なら UTF-8 を使います。4xx/5xx の本文も読みます。通信エラー・タイムアウトはエラー表示と本文・ヘッダーの消去になります。Try/Catch は応答検証の代用ではありません。停止は伝播し、ローカル書込・引数エラーは捕捉できます。
プロジェクトのソース: src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs; 関数 HttpRequest.
実際のクライアント処理段階で、追加命令ではありません。GET/POST が HttpRequest を呼び、Body/Header は runtime 内の結果を読むだけです。
# マナ閾値を取得
#
# HTTP/HTTPS で設定やファイルを取得します。取得内容の実行やゲーム接続の操作は行いません。
#
# Unit:値を返しません。Boolean、ID、バイト数ではありません。文字列は HTTP_Body()、バイト列はストリームから読みます。
SUB Main()
# JSON オブジェクト minMana の 0..100 を Integer に変換し、それ以外は 30。現在のマナではなく設定値です。
# example.com はこのサービスを提供しません。自分の URL に変更してください。実行すると実際の HTTP 要求が発生しますが、ゲーム操作はありません。
UO.HTTP_Get("https://example.com/basic-config.json")
Try
Dim config = JsonParse(UO.HTTP_Body())
Dim threshold = config.Get("minMana", 30)
If IsNumeric(threshold) Then
If threshold >= 0 AndAlso threshold <= 100 Then
Return CInt(threshold)
End If
End If
Catch problem
End Try
Return 30
END SUBパラメーターと実行の説明:
- JSON オブジェクト minMana の 0..100 を Integer に変換し、それ以外は 30。現在のマナではなく設定値です。
- example.com はこのサービスを提供しません。自分の URL に変更してください。実行すると実際の HTTP 要求が発生しますが、ゲーム操作はありません。
# 保存前に確認
#
# HTTP/HTTPS で設定やファイルを取得します。取得内容の実行やゲーム接続の操作は行いません。
#
# Unit:値を返しません。Boolean、ID、バイト数ではありません。文字列は HTTP_Body()、バイト列はストリームから読みます。
SUB Main()
# 空でないバイト列だけを作業フォルダーの download.bin に上書きします。True は形式の正しさを保証せず、内容検証が必要です。
# example.com はこのサービスを提供しません。自分の URL に変更してください。実行すると実際の HTTP 要求が発生しますが、ゲーム操作はありません。
Dim data = MemoryStream()
Using data
UO.HTTP_Get("https://example.com/route-data.bin", data)
If data.Length() = 0 Then
Return False
End If
data.SaveToFile("download.bin")
Return True
End Using
END SUBパラメーターと実行の説明:
- 空でないバイト列だけを作業フォルダーの download.bin に上書きします。True は形式の正しさを保証せず、内容検証が必要です。
- example.com はこのサービスを提供しません。自分の URL に変更してください。実行すると実際の HTTP 要求が発生しますが、ゲーム操作はありません。
# 直接ファイルへ保存
#
# HTTP/HTTPS で設定やファイルを取得します。取得内容の実行やゲーム接続の操作は行いません。
#
# Unit:値を返しません。Boolean、ID、バイト数ではありません。文字列は HTTP_Body()、バイト列はストリームから読みます。
SUB Main()
# 空応答でも作業フォルダーの http-download.bin を上書きします。Using が解放し、Main はヘッダーを返します。
# example.com はこのサービスを提供しません。自分の URL に変更してください。実行すると実際の HTTP 要求が発生しますが、ゲーム操作はありません。
Dim output = File("http-download.bin")
Using output
UO.HTTP_Get("https://example.com/route-data.bin", output)
End Using
Return UO.HTTP_Header()
END SUBパラメーターと実行の説明:
- 空応答でも作業フォルダーの http-download.bin を上書きします。Using が解放し、Main はヘッダーを返します。
- example.com はこのサービスを提供しません。自分の URL に変更してください。実行すると実際の HTTP 要求が発生しますが、ゲーム操作はありません。
ClassicUO
Bad Newbie & Basic IDE
Найти в справочнике
Клиент и скрипты
Каталоги значений
Разработка и помощь