SORU
11 EYLÜL 2010, CUMARTESİ


Objective-c bir NSURL parçaları almak

Değeri olan bir NSString var

http://digg.com/news/business/24hr

Nasıl 3. seviyeye önce her şeyi alabilir miyim?

http://digg.com/news/

CEVAP
11 EYLÜL 2010, CUMARTESİ


Bu tam olarak üçüncü düzeyde değil, sakıncası. Bir URL bu şekilde ayrılır:

  • iletişim kuralı veya düzeni (http)
  • :// sınırlayıcı
  • kullanıcı adı ve parola (burada yok ama username:password@hostname olabilir)
  • host name (digg.com)
  • port örneğin etki alanı adı sonra :80 olurdu)
  • yolu (/news/business/24hr)
  • dizge (noktalı virgül şekilde her şey)
  • sorgu dizesi (Yani eğer ?foo=bar&baz=frob gibi parametreleri ALMAK olsaydı olurdu)
  • parça (eğer bağlantı bir bağlantı olsaydı olurdu, #foobar gibi).

Bir "tam özellikli" URL bu gibi görünecektir:

http://foobar:nicate@example.com:8080/some/path/file.html;params-here?foo=bar#baz

NSURL erişenleri geniş bir alanı vardır. NSURL sınıf, bölüm belgelerinde onları kontrol edebilirsinizURL kısmına ulaşabilmek. Hızlı başvuru için:

  • -[NSURL scheme] = http
  • -[NSURL resourceSpecifier] = (URL sonuna // her şeyi)
  • -[NSURL user] = falanca
  • -[NSURL password] = nicate
  • -[NSURL host] = example.com
  • -[NSURL port] = 8080
  • -[NSURL path] = /some/path/file.html
  • -[NSURL pathComponents] = @["", "bazı", "", ""] file.html (ilk / bunun bir parçası olduğunu unutmayın) . yol/
  • -[NSURL lastPathComponent] = file.html
  • -[NSURL pathExtension] = html
  • -[NSURL parameterString] = parametreler burada
  • -[NSURL query] = =foo bar
  • -[NSURL fragment] = baz

İsteyeceğiniz şey, böyle bir şey

NSURL* url = [NSURL URLWithString:@"http://digg.com/news/business/24hr"];
NSString* reducedUrl = [NSString stringWithFormat:
    @"%@://%@/%@",
    url.scheme,
    url.host,
    url.pathComponents[1]];

İster gibisin ne senin örneğin URL, protokol, ev sahibi ve ilk yolu bileşenidir. (Dizi -[NSString pathComponents] tarafından döndürülen dizin 0'daki öğe sadece"", bu yüzden dizin 1 öğe isteyeceksiniz. / Diğer kesikler atılır.)

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • George McCarron

    George McCar

    29 Mayıs 2013
  • Google Developers

    Google Devel

    23 AĞUSTOS 2007
  • Numberphile

    Numberphile

    15 EYLÜL 2011