Qt wiki will be updated on October 12th 2023 starting at 11:30 AM (EEST) and the maintenance will last around 2-3 hours. During the maintenance the site will be unavailable.

URL Shortener/bg: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
No edit summary
 
No edit summary
Line 1: Line 1:
'''Български''' [[URL Shortener|English]]
[[Category:snippets]]<br />[[Category:HowTo]]


=Съкращаване на <span class="caps">URL</span> (<span class="caps">URL</span> Shortener)=
[toc align_right=&quot;yes&amp;quot; depth=&quot;2&amp;quot;]


==Общ преглед==
'''Български''' [[URL_Shortener|English]]


Чрез техниката за съкращаване на адреси на Интернет страници (<span class="caps">URL</span>) се съкраща дължината на <span class="caps">URL</span> и запазва посоката към желаната страница. Използва се често за по-просто представяне на <span class="caps">URL</span>-та в социални мрежи и мобилни приложения.
= Съкращаване на URL (URL Shortener) =


==Програмни интерфейси==
== Общ преглед ==


Има много онлайн услуги и програмни интерфейси за съкращаване на <span class="caps">URL</span>. Най-популярни са:
Чрез техниката за съкращаване на адреси на Интернет страници (URL) се съкраща дължината на URL и запазва посоката към желаната страница. Използва се често за по-просто представяне на URL-та в социални мрежи и мобилни приложения.


* [http://goo.gl/ Google Url Shortener] ''[goo.gl]''
== Програмни интерфейси ==
* [http://dev.bitly.com/ Bit.ly] ''[dev.bitly.com]''
* [http://is.gd/apishorteningreference.php is.gd and v.gd] ''[is.gd]''


==Съкращаване на <span class="caps">URL</span> за Qt==
Има много онлайн услуги и програмни интерфейси за съкращаване на URL. Най-популярни са:<br />* &quot;Google Url Shortener&amp;quot;:http://goo.gl/<br />* &quot;Bit.ly&amp;quot;:http://dev.bitly.com/<br />* &quot;is.gd and v.gd&amp;quot;:http://is.gd/apishorteningreference.php


Имплементация на съкращаване на <span class="caps">URL</span> за Qt, базирана на услугата is.gd и [[Download Data from URL Bulgarian|класът за сваляне на данни от <span class="caps">URL</span>]] ''[qt.io]''.
== Съкращаване на URL за Qt ==


===Програмен код===
Имплементация на съкращаване на URL за Qt, базирана на услугата is.gd и &quot;класът за сваляне на данни от URL&amp;quot;:http://wiki.qt.io/Download_Data_from_URL_Bulgarian.


Програмният интерфейс предоставен от is.gd поддържа json, xml и чист текст за просто отвор. За някои случаи като мобилни приложения простия отговор е по-добро решения, защото не е обходима допълнителна обработка на текста. Публикуваната имплементация е от [https://gitorious.org/location2sms location2sms] ''[gitorious.org]'' (мобилно приложения с отворен код).
=== Програмен код ===


===Употреба===
Програмният интерфейс предоставен от is.gd поддържа json, xml и чист текст за просто отвор. За някои случаи като мобилни приложения простия отговор е по-добро решения, защото не е обходима допълнителна обработка на текста. Публикуваната имплементация е от &quot;location2sms&amp;quot;:https://gitorious.org/location2sms (мобилно приложения с отворен код).


==Други статии==
<code><br />#ifndef URLSHORTENER_H<br />#define URLSHORTENER_H


[[Download Data from URL Bulgarian|Сваляне на данни от <span class="caps">URL</span>]] ''[qt.io]''
//Standard includes<br />#include &lt;QObject&amp;gt;<br />#include &lt;QString&amp;gt;


===Categories:===
//Project specific includes<br />#include &quot;filedownloader.h&amp;quot;


* [[:Category:HowTo|HowTo]]
class UrlShortener : public QObject<br />{<br /> Q_OBJECT
* [[:Category:snippets|snippets]]
 
private:
 
FileDownloader* m_pDownloader;
 
QString m_sShortUrl;
 
public:
 
explicit UrlShortener(QObject '''parent = 0);
<br /> virtual ~UrlShortener();
<br /> /'''*<br /> * Request short URL from Google API<br /> *<br /> * </code>param sURL<br /> *<br /> * <code>return nothing<br /> '''/<br /> void requestShortUrl(QString sURL);
<br /> /'''*<br /> * Get address<br /> *<br /> * </code>return QString<br /> */<br /> QString getShortUrl() const;
 
signals:
 
void shortUrlRetrieved();
 
private slots:
 
void parseResponse();
 
};
 
#endif // URLSHORTENER_H<br /><code>
 
</code>
 
//Project specific includes<br />#include &quot;urlshortener.h&amp;quot;
 
//Standard includes<br />#include &lt;QTextStream&amp;gt;
 
UrlShortener::UrlShortener(QObject '''parent) :<br /> QObject(parent),<br /> m_pDownloader(NULL)<br />{<br /> m_pDownloader = new FileDownloader(this);
<br /> connect(m_pDownloader, SIGNAL (downloaded()), SLOT (parseResponse()));<br />}<br />//——————————————————————————
<br />UrlShortener::~UrlShortener()<br />{<br /> //Nothing to do<br />}<br />//——————————————————————————
<br />void UrlShortener::requestShortUrl(QString sURL)<br />{<br /> //Obtain short URL<br /> QUrl req = QUrl( &quot;http://is.gd/create.php&amp;quot;);<br /> req.addQueryItem(&quot;format&amp;quot;, &quot;simple&amp;quot;);<br /> req.addQueryItem(&quot;longurl&amp;quot;, sURL);<br /> m_pDownloader-&gt;downloadUrl(req);<br />}<br />//——————————————————————————
<br />void UrlShortener::parseResponse()<br />{<br /> QTextStream downloadedStream(m_pDownloader-&gt;downloadedData());
<br /> m_sShortUrl = downloadedStream.readAll();
<br /> //emit a signal<br /> emit shortUrlRetrieved();<br />}<br />//——————————————————————————
<br />QString UrlShortener::getShortUrl() const<br />{<br /> return m_sShortUrl;<br />}<br />//——————————————————————————
<br /><code>
<br />h3. Употреба
<br /></code><br />m_pUrlShortener = new UrlShortener(this);<br />connect(m_pUrlShortener, SIGNAL (shortUrlRetrieved()), this, SLOT (loadMapShortUrl()));<br />//'''<br />m_pUrlShortener-&gt;requestShortUrl(QString(&quot;http://example.com&amp;quot;));<br /><code>
 
== Други статии ==

Revision as of 06:19, 24 February 2015


[toc align_right="yes&quot; depth="2&quot;]

Български English

Съкращаване на URL (URL Shortener)

Общ преглед

Чрез техниката за съкращаване на адреси на Интернет страници (URL) се съкраща дължината на URL и запазва посоката към желаната страница. Използва се често за по-просто представяне на URL-та в социални мрежи и мобилни приложения.

Програмни интерфейси

Има много онлайн услуги и програмни интерфейси за съкращаване на URL. Най-популярни са:
* "Google Url Shortener&quot;:http://goo.gl/
* "Bit.ly&quot;:http://dev.bitly.com/
* "is.gd and v.gd&quot;:http://is.gd/apishorteningreference.php

Съкращаване на URL за Qt

Имплементация на съкращаване на URL за Qt, базирана на услугата is.gd и "класът за сваляне на данни от URL&quot;:http://wiki.qt.io/Download_Data_from_URL_Bulgarian.

Програмен код

Програмният интерфейс предоставен от is.gd поддържа json, xml и чист текст за просто отвор. За някои случаи като мобилни приложения простия отговор е по-добро решения, защото не е обходима допълнителна обработка на текста. Публикуваната имплементация е от "location2sms&quot;:https://gitorious.org/location2sms (мобилно приложения с отворен код).

<br />#ifndef URLSHORTENER_H<br />#define URLSHORTENER_H

//Standard includes<br />#include &lt;QObject&amp;gt;<br />#include &lt;QString&amp;gt;

//Project specific includes<br />#include &quot;filedownloader.h&amp;quot;

class UrlShortener : public QObject<br />{<br /> Q_OBJECT

private:

FileDownloader* m_pDownloader;

QString m_sShortUrl;

public:

explicit UrlShortener(QObject '''parent = 0);
<br /> virtual ~UrlShortener();
<br /> /'''*<br /> * Request short URL from Google API<br /> *<br /> *

param sURL
*
*

return nothing<br /> '''/<br /> void requestShortUrl(QString sURL);
<br /> /'''*<br /> * Get address<br /> *<br /> *

return QString
*/
QString getShortUrl() const;

signals:

void shortUrlRetrieved();

private slots:

void parseResponse();

};

  1. endif // URLSHORTENER_H

//Project specific includes
#include "urlshortener.h&quot;

//Standard includes
#include <QTextStream&gt;

UrlShortener::UrlShortener(QObject parent) :
QObject(parent),
m_pDownloader(NULL)
{
m_pDownloader = new FileDownloader(this);

connect(m_pDownloader, SIGNAL (downloaded()), SLOT (parseResponse()));
}
//——————————————————————————
UrlShortener::~UrlShortener()
{
//Nothing to do
}
//——————————————————————————
void UrlShortener::requestShortUrl(QString sURL)
{
//Obtain short URL
QUrl req = QUrl( "http://is.gd/create.php&quot;);
req.addQueryItem("format&quot;, "simple&quot;);
req.addQueryItem("longurl&quot;, sURL);
m_pDownloader->downloadUrl(req);
}
//——————————————————————————
void UrlShortener::parseResponse()
{
QTextStream downloadedStream(m_pDownloader->downloadedData());
m_sShortUrl = downloadedStream.readAll();
//emit a signal
emit shortUrlRetrieved();
}
//——————————————————————————
QString UrlShortener::getShortUrl() const
{
return m_sShortUrl;
}
//——————————————————————————


<br />h3. Употреба
<br />


m_pUrlShortener = new UrlShortener(this);
connect(m_pUrlShortener, SIGNAL (shortUrlRetrieved()), this, SLOT (loadMapShortUrl()));
//
m_pUrlShortener->requestShortUrl(QString("http://example.com&quot;));

Други статии