فئة System::Uri

Uri class

معرف موحد للموارد. يجب إنشاء كائنات هذه الفئة فقط باستخدام الدالة System::MakeObject(). لا تقم أبدًا بإنشاء نسخة من هذا النوع على المكدس أو باستخدام المشغل new، لأن ذلك سيسبّب أخطاءً وقت التشغيل أو أعطالًا في التأكيد. احرص دائمًا على تغليف هذه الفئة في مؤشر System::SmartPtr واستخدام هذا المؤشر لتمريره إلى الدوال كمعامل.

class Uri : public System::Object

الطرق

طريقةالوصف
static CheckHostName(String)يحدد نوع اسم المضيف المحدد.
static CheckSchemeName(const String&)يحدد ما إذا كان المخطط المحدد صالحًا.
static Compare(const SharedPtr<Uri>&, const SharedPtr<Uri>&, UriComponents, UriFormat, StringComparison)يقارن الكائنات Uri المحددة باستخدام قواعد المقارنة المحددة.
Equals(SharedPtr<Object>) overrideيحدد ما إذا كانت عناوين URI التي يمثلها الكائن الحالي والكائن المحدد متساوية.
static EscapeDataString(const String&)يحوّل سلسلة إلى تمثيلها المُهَرَّب.
static EscapeUriString(const String&)يحوّل سلسلة URI إلى تمثيلها المُهَرَّب.
static FromHex(char16_t)يحصل على القيمة العشرية للرقم السداسي العشري.
get_AbsolutePath() constيرجع المسار المطلق للـ URI.
get_AbsoluteUri() constيرجع الـ URI المطلق.
get_Authority() constيرجع اسم المضيف ورقم المنفذ للخادم.
get_DnsSafeHost() constيرجع اسم مضيف غير مهَرَّب.
get_Fragment() constيرجع الجزء المُهَرَّب من الـ URI.
get_Host() constيعيد اسم المضيف.
get_HostNameType() constيعيد نوع اسم المضيف.
get_IdnHost() constيعيد اسم نطاق دولي للمضيف.
get_IsAbsoluteUri() constيحدد ما إذا كان الـ URI الممثَّل بواسطة الكائن الحالي مطلقًا.
get_IsDefaultPort() constيحدد ما إذا كان الـ URI الممثَّل بواسطة الكائن الحالي يحتوي على المنفذ الافتراضي لمخطط الـ URI.
get_IsFile() constيحدد ما إذا كان الـ URI الممثَّل بواسطة الكائن الحالي ملفًا.
get_IsLoopback() constيحدد ما إذا كان الـ URI الممثَّل بواسطة الكائن الحالي يشير إلى مضيف محلي.
get_IsUnc() constيحدد ما إذا كان الـ URI الممثَّل بواسطة الكائن الحالي مسار UNC.
get_LocalPath() constيعيد تمثيل نظام التشغيل لاسم الملف المشار إليه بواسطة الـ URI الممثَّل بواسطة الكائن الحالي.
get_OriginalString() constيعيد سلسلة الـ URI التي تم تمريرها إلى المُنشئ عندما تم إنشاء الكائن الحالي.
get_PathAndQuery() constيعيد المسار المطلق ومكوّنات الاستعلام للـ URI الممثَّل بواسطة الكائن الحالي مفصولة بعلامة استفهام (؟).
get_Port() constيعيد رقم المنفذ للـ URI الممثَّل بواسطة الكائن الحالي.
get_Query() constيعيد معلومات الاستعلام المتضمنة في الـ URI الممثَّل بواسطة الكائن الحالي.
get_Scheme() constيعيد مخطط الـ URI الممثَّل بواسطة الكائن الحالي.
get_Segments() constيعيد مصفوفة من السلاسل التي تحتوي على مقاطع المسار للـ URI الممثَّل بواسطة الكائن الحالي.
get_UserEscaped() constيحدد ما إذا كانت سلسلة الـ URI التي تم تمريرها إلى مُنشئ الكائن الحالي مُهربة بالكامل.
get_UserInfo() constيعيد اسم المستخدم، كلمة المرور ومعلومات مستخدم أخرى مرتبطة بالـ URI الممثَّل بواسطة الكائن الحالي.
GetComponents(UriComponents, UriFormat) constيعيد المكوّنات المحددة للـ URI الممثَّل بواسطة الكائن الحالي باستخدام التهريب المحدد.
GetHashCode() const overrideيحصل على رمز التجزئة للـ URI.
GetLeftPart(UriPartial)يعيد الجزء المحدد من الـ URI الممثَّل بواسطة الكائن الحالي.
static HexEscape(char16_t)يعيد ما يعادل الحرف المحدد في النظام الست عشري.
static HexUnescape(const String&, int32_t&)يحوّل التمثيل الست عشري المحدد لحرف إلى حرف.
IsBaseOf(const SharedPtr<Uri>&) constيحدد ما إذا كان الـ URI الممثَّل بواسطة الكائن الحالي Uri هو قاعدة للـ URI الممثَّل بواسطة الكائن Uri المحدد.
static IsHexDigit(char16_t)يحدد ما إذا كان الحرف المحدد يمثل رقمًا سداسيًا عشريًا صالحًا.
static IsHexEncoding(const String&, int32_t)يحدد ما إذا كان حرف في السلسلة المحددة في الموضع المحدد مُشفَّرًا سداسيًا عشريًا.
IsWellFormedOriginalString() constيشير إلى ما إذا كانت السلسلة المستخدمة لإنشاء هذا Uri مُشكّلة بشكل صحيح ولا تحتاج إلى مزيد من الهروب.
static IsWellFormedUriString(const String&, UriKind)يحدد ما إذا كانت السلسلة المحددة URI مُشكّلة بشكل صحيح.
MakeRelative(const SharedPtr<Uri>&)يحدد الفرق بين مثالي Uri اثنين.
MakeRelativeUri(const SharedPtr<Uri>&)يحدد الفرق بين عناوين URI التي تمثلها الكائنات الحالية والمحددة من نوع Uri.
ToString() const overrideيعيد تمثيل السلسلة للـ URI الذي يمثله الكائن الحالي.
static TryCreate(const String&, UriKind, SharedPtr<Uri>&)ينشئ كائنًا من نوع Uri يمثل الـ URI المحدد؛ يحدد معامل نوع الـ URI.
static TryCreate(const SharedPtr<Uri>&, const String&, SharedPtr<Uri>&)ينشئ كائنًا من نوع Uri من كائن Uri المحدد الذي يمثل الـ URI الأساسي وتمثيل السلسلة للـ URI النسبي.
static TryCreate(const SharedPtr<Uri>&, const SharedPtr<Uri>&, SharedPtr<Uri>&)ينشئ كائنًا من نوع Uri من الـ URI الأساسي والـ URI النسبي المحددين.
static UnescapeDataString(const String&)يلغي هروب السلسلة المشفرة المحددة.
Uri(const String&)ينشئ كائنًا من نوع Uri يمثل الـ URI المحدد.
Uri(const String&, bool)ينشئ كائنًا من نوع Uri يمثل الـ URI المحدد؛ يحدد معامل ما إذا كان يجب هروب الـ URI.
Uri(const SharedPtr<Uri>&, const String&, bool)ينشئ كائنًا من نوع Uri من كائن Uri المحدد الذي يمثل الـ URI الأساسي وتمثيل السلسلة للـ URI النسبي؛ يحدد معامل ما إذا كان يجب هروب الـ URI.
Uri(const String&, UriKind)ينشئ كائنًا من نوع Uri يمثل الـ URI المحدد؛ يحدد معامل نوع الـ URI.
Uri(const SharedPtr<Uri>&, const String&)ينشئ كائنًا من نوع Uri من الـ URI الأساسي والـ URI النسبي المحددين.
Uri(const SharedPtr<Uri>&, const SharedPtr<Uri>&)ينشئ كائنًا من نوع Uri من الـ URI الأساسي والـ URI النسبي المحددين.

الحقول

حقلالوصف
static SchemeDelimiterيحدد الأحرف التي تفصل مخطط بروتوكول الاتصال عن جزء العنوان في الـ Uri.
static UriSchemeFileيحدد أن الـ Uri هو مؤشر إلى ملف.
static UriSchemeFtpيحدد أن الـ Uri يُستَخدم عبر بروتوكول نقل الملفات.
static UriSchemeGopherيحدد أن الـ Uri يُستَخدم عبر بروتوكول Gopher.
static UriSchemeHttpيحدد أن الـ Uri يُستَخدم عبر بروتوكول نقل النص الفائق.
static UriSchemeHttpsيحدد أن الـ Uri يُستَخدم عبر بروتوكول نقل النص الفائق الآمن.
static UriSchemeMailtoيحدد أن الـ Uri هو عنوان بريد إلكتروني ويُستَخدم عبر بروتوكول نقل البريد البسيط.
static UriSchemeNetPipeيحدد أن الـ Uri يُستَخدم عبر مخطط NetPipe المستخدم من قبل Windows Communication Foundation.
static UriSchemeNetTcpيحدد أن الـ Uri يُستَخدم عبر مخطط NetTcp المستخدم من قبل Windows Communication Foundation.
static UriSchemeNewsيحدد أن الـ Uri هو مجموعة أخبار إنترنت ويُستَخدم عبر بروتوكول نقل أخبار الشبكة.
static UriSchemeNntpيحدد أن الـ Uri هو مجموعة أخبار إنترنت ويُستَخدم عبر بروتوكول نقل أخبار الشبكة.

ملاحظات

#include "system/smart_ptr.h"
#include "system/uri.h"
#include <iostream>

int main()
{
  const auto uri = System::MakeObject<System::Uri>(u"https://docs.codeporting.com/translator/cs2cpp/release-notes/2021/codeporting-translator-cs2cpp-21-9/");

std::cout <<
  "AbsolutePath: " << uri->get_AbsolutePath() << std::endl <<
  "AbsoluteUri: " << uri->get_AbsoluteUri() << std::endl <<
  "Authority: " << uri->get_Authority() << std::endl <<
  "DnsSafeHost: " << uri->get_DnsSafeHost() << std::endl <<
  "Fragment: " << uri->get_Fragment() << std::endl <<
  "Host: " << uri->get_Host() << std::endl <<
  "IdnHost: " << uri->get_IdnHost() << std::endl <<
  "LocalPath: " << uri->get_LocalPath() << std::endl <<
  "OriginalString: " << uri->get_OriginalString() << std::endl <<
  "PathAndQuery: " << uri->get_PathAndQuery() << std::endl <<
  "Port: " << uri->get_Port() << std::endl <<
  "Query: " << uri->get_Query() << std::endl <<
  "Scheme: " << uri->get_Scheme() << std::endl;

  return 0;
}
/*
This code example produces the following output:
AbsolutePath: /translator/cs2cpp/release-notes/2021/codeporting-translator-cs2cpp-21-9/
AbsoluteUri: https://docs.codeporting.com/translator/cs2cpp/release-notes/2021/codeporting-translator-cs2cpp-21-9/
Authority: docs.codeporting.com
DnsSafeHost: docs.codeporting.com
Fragment:
Host: docs.codeporting.com
IdnHost: docs.codeporting.com
LocalPath: /translator/cs2cpp/release-notes/2021/codeporting-translator-cs2cpp-21-9/
OriginalString: https://docs.codeporting.com/translator/cs2cpp/release-notes/2021/codeporting-translator-cs2cpp-21-9/
PathAndQuery: /translator/cs2cpp/release-notes/2021/codeporting-translator-cs2cpp-21-9/
Port: 443
Query:
Scheme: https
*/

انظر أيضًا