فئة 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
*/

انظر أيضًا