RSS to javascript

Κώδικας, πληροφορίες, ερωτήσεις και απαντήσεις σχετικές με την JavaScript.

Συντονιστές: WebDev Moderators, Super-Moderators

Απάντηση
Άβαταρ μέλους
Insurer
Δημοσιεύσεις: 391
Εγγραφή: 13 Απρ 2009 21:40
Τοποθεσία: Ακροκεραύνεια

RSS to javascript

Δημοσίευση από Insurer » 01 Οκτ 2010 17:32

Καλησπέρα,
υπάρχουν κάποιες σελίδες όπως αυτη εδώ http://www.geckotribe.com/rss/jawfish/ που μετατρέπουν σελίδες rss σε javascript.
Θα μπορουσα να το κάνω ο ίδιος ωστε να αποφύγω την διαφήμιση του JawFish στα codes που μου δίνει?

Ευχαριστώ

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6231
Εγγραφή: 30 Νοέμ 2004 03:09

RSS to javascript

Δημοσίευση από fafos » 01 Οκτ 2010 18:04

me jquery:

Κώδικας: Επιλογή όλων

<script type="text/javascript" src="http&#58;//ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>

<script>

$&#40;document&#41;.ready&#40;function&#40;&#41;&#123;
    $.ajax&#40;&#123;
        type&#58; "GET",
        url&#58; "http&#58;//www.enet.gr/rss?i=news.el.article",
        dataType&#58; "xml",
        success&#58; function&#40;xml&#41; &#123;
            $&#40;xml&#41;.find&#40;'item'&#41;.each&#40;function&#40;&#41;&#123;
                var id = $&#40;this&#41;.attr&#40;'id'&#41;;
                var title = $&#40;this&#41;.find&#40;'title'&#41;.text&#40;&#41;;
                var guid = $&#40;this&#41;.find&#40;'guid'&#41;.text&#40;&#41;;
                var description = $&#40;this&#41;.find&#40;'description'&#41;.text&#40;&#41;;
                $&#40;'<div class="items" id="link_'+id+'"></div>'&#41;.html&#40;'<a href="'+guid+'">'+title+'</a><br>'+description&#41;.appendTo&#40;'#page-wrap'&#41;;

    
                
            &#125;&#41;;
        &#125;
    &#125;&#41;;
&#125;&#41;;
</script>
    <div id="page-wrap">
         <h1>News from Enet.gr</h1>
     </div>


prosexe mono na epitrepei h selida pou dinei to feed na to xrhsimopoihseis sto site sou..
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

Άβαταρ μέλους
Insurer
Δημοσιεύσεις: 391
Εγγραφή: 13 Απρ 2009 21:40
Τοποθεσία: Ακροκεραύνεια

RSS to javascript

Δημοσίευση από Insurer » 01 Οκτ 2010 18:10

χμμμ μιλάς για copyrights κλπ ε?
με το πονηρό μου το μυαλό λαμβάνω ως αποδοχή του να το βάλω το οτι δεν έχει πουθενά απαγόρευση!

Σ'ευχαριστώ πάρα πολύ

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6231
Εγγραφή: 30 Νοέμ 2004 03:09

RSS to javascript

Δημοσίευση από fafos » 01 Οκτ 2010 18:29

Insurer έγραψε:χμμμ μιλάς για copyrights κλπ ε?
με το πονηρό μου το μυαλό λαμβάνω ως αποδοχή του να το βάλω το οτι δεν έχει πουθενά απαγόρευση!

Σ'ευχαριστώ πάρα πολύ
vasika an afhseis linkarismenous tous titlous kai valeis phgh apo kato den tha sou milhsei kapoios..


mia ekdosh an theleis na deixneis orismeno arithmo eggrafon:

Κώδικας: Επιλογή όλων

<script>

$&#40;document&#41;.ready&#40;function&#40;&#41;&#123;
    $.ajax&#40;&#123;
        type&#58; "GET",
        url&#58; "http&#58;//www.enet.gr/rss?i=news.el.article",
        dataType&#58; "xml",
        success&#58; function&#40;xml&#41; &#123;
var i = 0;
            $&#40;xml&#41;.find&#40;'item'&#41;.each&#40;function&#40;&#41;&#123;

                var id = $&#40;this&#41;.attr&#40;'id'&#41;;
                var title = $&#40;this&#41;.find&#40;'title'&#41;.text&#40;&#41;;
                var guid = $&#40;this&#41;.find&#40;'guid'&#41;.text&#40;&#41;;
                var description = $&#40;this&#41;.find&#40;'description'&#41;.text&#40;&#41;;



if&#40;i < 5&#41; &#123;
                $&#40;'<div class="items" id="link_'+id+'"></div>'&#41;.html&#40;'<a href="'+guid+'">'+title+'</a><br>'+description&#41;.appendTo&#40;'#page-wrap'&#41;;
&#125;
i++;

                
            &#125;&#41;;
        &#125;
    &#125;&#41;;
&#125;&#41;;
</script>

sto if(i < 5) dhloneis poses apo tis eggrafes thes na deixnei..
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

nbc
Honorary Member
Δημοσιεύσεις: 526
Εγγραφή: 05 Σεπ 2009 20:12
Επικοινωνία:

RSS to javascript

Δημοσίευση από nbc » 01 Οκτ 2010 19:09

Τα external feeds θέλουν proxy :wink:

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6231
Εγγραφή: 30 Νοέμ 2004 03:09

RSS to javascript

Δημοσίευση από fafos » 01 Οκτ 2010 19:18

nbc έγραψε:Τα external feeds θέλουν proxy :wink:
h ena aplo copy()... :wink:
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

nbc
Honorary Member
Δημοσιεύσεις: 526
Εγγραφή: 05 Σεπ 2009 20:12
Επικοινωνία:

RSS to javascript

Δημοσίευση από nbc » 01 Οκτ 2010 19:27

Τι copy, δεν σε εννοώ δάσκαλε :D


Σε περίπτωση που δεν έγινα σαφής, διευκρινίζω πως (για λόγους ασφαλείας, κλπ), το ajax δεν λαμβάνει html/xml απο external domains. Συνεπώς, για να λειτουργήσει αυτό που έκαμες, θα πρέπει το request να γίνεται σ'ενα script των 2 γραμμών στο δικό σου server, το οποίο και θα παραδίδει το feed στη javascript.

πχ, αντί του

Κώδικας: Επιλογή όλων

url&#58; "http&#58;//www.enet.gr/rss?i=news.el.article"
βάζεις

Κώδικας: Επιλογή όλων

url&#58; "proxy.php?url=http&#58;//www.enet.gr/rss?i=news.el.article"
όπου proxy.php

Κώδικας: Επιλογή όλων

<?php
header&#40;'Content-type&#58; application/xml'&#41;;
echo file_get_contents&#40;$_REQUEST&#91;'url'&#93;&#41;;

Άβαταρ μέλους
Insurer
Δημοσιεύσεις: 391
Εγγραφή: 13 Απρ 2009 21:40
Τοποθεσία: Ακροκεραύνεια

RSS to javascript

Δημοσίευση από Insurer » 01 Οκτ 2010 19:55

γουαου τώρα μπερδεύτηκα...
fafos δεν δούλεψε με τον πρώτο τροπο

Πάμε λίγο πιο χαλαρά μπας και βγαλω άκρη

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6231
Εγγραφή: 30 Νοέμ 2004 03:09

RSS to javascript

Δημοσίευση από fafos » 01 Οκτ 2010 20:08

Κώδικας: Επιλογή όλων

<? copy&#40;'http&#58;//www.enet.gr/rss?i=news.el.article', 'enet.xml'&#41;;?>
kai sto script dineis: url: "enet.xml",
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

Άβαταρ μέλους
Insurer
Δημοσιεύσεις: 391
Εγγραφή: 13 Απρ 2009 21:40
Τοποθεσία: Ακροκεραύνεια

RSS to javascript

Δημοσίευση από Insurer » 01 Οκτ 2010 20:15

:( εγω πάω στο jawfish κάνω paste το rss url και μου κάνει generate ένα javascript που το βάζω στην σελίδα μου.
Που θα βρώ proxy!!
Τι πρέπει να ανεβάσω στον σερβερ μου?

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6231
Εγγραφή: 30 Νοέμ 2004 03:09

RSS to javascript

Δημοσίευση από fafos » 01 Οκτ 2010 21:36

Insurer έγραψε::( εγω πάω στο jawfish κάνω paste το rss url και μου κάνει generate ένα javascript που το βάζω στην σελίδα μου.
Που θα βρώ proxy!!
Τι πρέπει να ανεβάσω στον σερβερ μου?
enoeis oti thes kodika na ton vazeis ston editor tou cms sou kai na vgazei ta xml xoris na peirakseis kodika stis selides sou?
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

Άβαταρ μέλους
ThyClub
Honorary Member
Δημοσιεύσεις: 5312
Εγγραφή: 17 Νοέμ 2003 00:21
Τοποθεσία: Hell's Kitchen
Επικοινωνία:

RSS to javascript

Δημοσίευση από ThyClub » 01 Οκτ 2010 22:28

Άσχετο αλλά ποιός είπε ότι δεν υπάρχει τρόπος να φορτώσεις external url χωρίς proxy στον σέρβερ σου?

Έστω και αν είναι ένα είδος proxy...

Κώδικας: Επιλογή όλων

/**
* jQuery.ajax mid - CROSS DOMAIN AJAX
* ---
* @author James Padolsey &#40;http&#58;//james.padolsey.com&#41;
* @version 0.11
* @updated 12-JAN-10
* ---
* Note&#58; Read the README!
* ---
* @info http&#58;//james.padolsey.com/javascript/cross-domain-requests-with-jquery/
*/

jQuery.ajax = &#40;function&#40;_ajax&#41;&#123;
    
    var protocol = location.protocol,
        hostname = location.hostname,
        exRegex = RegExp&#40;protocol + '//' + hostname&#41;,
        YQL = 'http' + &#40;/^https/.test&#40;protocol&#41;?'s'&#58;''&#41; + '&#58;//query.yahooapis.com/v1/public/yql?callback=?',
        query = 'select * from xml where url="&#123;URL&#125;"';
//Αλλάζουμε το query ανάλογα με τα θέλω μας...
    
    function isExternal&#40;url&#41; &#123;
        return !exRegex.test&#40;url&#41; && /&#58;\/\//.test&#40;url&#41;;
    &#125;
    
    return function&#40;o&#41; &#123;
        
        var url = o.url;
        
        if &#40; /get/i.test&#40;o.type&#41; && !/json/i.test&#40;o.dataType&#41; && isExternal&#40;url&#41; &#41; &#123;
            
            // Manipulate options so that JSONP-x request is made to YQL
            
            o.url = YQL;
            o.dataType = 'json';
            
            o.data = &#123;
                q&#58; query.replace&#40;
                    '&#123;URL&#125;',
                    url + &#40;o.data ?
                        &#40;/\?/.test&#40;url&#41; ? '&' &#58; '?'&#41; + jQuery.param&#40;o.data&#41;
                    &#58; ''&#41;
                &#41;,
                format&#58; 'xml'
            &#125;;
            
            // Since it's a JSONP request
            // complete === success
            if &#40;!o.success && o.complete&#41; &#123;
                o.success = o.complete;
                delete o.complete;
            &#125;
            
            o.success = &#40;function&#40;_success&#41;&#123;
                return function&#40;data&#41; &#123;
                    
                    if &#40;_success&#41; &#123;
                        // Fake XHR callback.
                        _success.call&#40;this, &#123;
                            responseText&#58; data.results&#91;0&#93;
                                // YQL screws with <script>s
                                // Get rid of them
                                .replace&#40;/<script&#91;^>&#93;+?\/>|<script&#40;.|\s&#41;*?\/script>/gi, ''&#41;
                        &#125;, 'success'&#41;;
                    &#125;
                    
                &#125;;
            &#125;&#41;&#40;o.success&#41;;
            
        &#125;
        
        return _ajax.apply&#40;this, arguments&#41;;
        
    &#125;;
    
&#125;&#41;&#40;jQuery.ajax&#41;;
και...

Κώδικας: Επιλογή όλων

<html>
<title>Feed Parser</title>
<script src="http&#58;//ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script src="xdomain.js"></script>
<script>

$&#40;document&#41;.ready&#40;function&#40;&#41;&#123;
    $.ajax&#40;&#123;
        type&#58; "GET",
        url&#58; "http&#58;//www.enet.gr/rss?i=news.el.article",
        success&#58; function&#40;xml&#41; &#123;
            var i = 0;
            //alert&#40;xml.responseText&#41;;
            $&#40;xml.responseText&#41;.find&#40;'item'&#41;.each&#40;function&#40;&#41;&#123;
                
                var id = $&#40;this&#41;.attr&#40;'id'&#41;;
                var title = $&#40;this&#41;.find&#40;'title'&#41;.text&#40;&#41;;
                var guid = $&#40;this&#41;.find&#40;'guid'&#41;.text&#40;&#41;;
                var description = $&#40;this&#41;.find&#40;'description'&#41;.text&#40;&#41;;



                if&#40;i < 5&#41; &#123;
                                $&#40;'<div class="items" id="link_'+id+'"></div>'&#41;.html&#40;'<a href="'+guid+'">'+title+'</a><br>'+description&#41;.appendTo&#40;'#page-wrap'&#41;;
                &#125;
                i++;

               
            &#125;&#41;;
        &#125;
    &#125;&#41;;
&#125;&#41;;
</script>
<body>
<div id="page-wrap"></div>
</body>
</html>
Έτοιμο!

Άβαταρ μέλους
Insurer
Δημοσιεύσεις: 391
Εγγραφή: 13 Απρ 2009 21:40
Τοποθεσία: Ακροκεραύνεια

RSS to javascript

Δημοσίευση από Insurer » 01 Οκτ 2010 23:28

ναι fafos αυτο θέλω να μαθω.
proxy που θα βρω? δεν ξέρω αν υποστιρίζει ο provider λογικα οχι

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6231
Εγγραφή: 30 Νοέμ 2004 03:09

RSS to javascript

Δημοσίευση από fafos » 01 Οκτ 2010 23:31

Insurer έγραψε:ναι fafos αυτο θέλω να μαθω.
proxy που θα βρω? δεν ξέρω αν υποστιρίζει ο provider λογικα οχι
me auta pou sou dinoume prepei na epemveis sto kodika ton selidon sou.. an den gnorizeis tha prepei anagkastika na xrhsimopoihseis ta etoima..
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

Άβαταρ μέλους
dimsis
Reporter
Δημοσιεύσεις: 7994
Εγγραφή: 25 Ιούλ 2001 03:00

RSS to javascript

Δημοσίευση από dimsis » 01 Οκτ 2010 23:50

Αν και με πατέντα μέσω yahooapis... δεν είν κακό και δουλεύει. thanx Βασίλη.
Και εγώ το ίδιο πράγμα με αυτό που γράφει και ο nbc είχα στείλει pm στον fafos πάντως :)

Απάντηση

Επιστροφή στο “JavaScript και Frameworks”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 1 επισκέπτης