[ pl4stik @ 27.02.2014. 21:31 ] @
Pokusavam da posaljem GET request i procitam response ovako

Code:

$url = "http://localhost:10626/InsertUser.svc/InsertData?P_Action='INSERTCOURSEINFO'&p_CourseID=2&p_Course_Descr='Description'&p_Employee_No=11&p_SiteId=11&DateCompleted='1/23/2013'";

$rsp = file_get_contents($url);

$rsp_obj = unserialize($rsp);

ali non stop dobijam
Code:
array(14) { [0]=> string(15) "HTTP/1.1 200 OK" [1]=> string(23) "Cache-Control: no-cache" [2]=> string(43) "Content-Type: application/xml;charset=utf-8" [3]=> string(25) "Server: Microsoft-IIS/8.0" [4]=> string(31) "X-Content-Type-Options: nosniff" [5]=> string(24) "DataServiceVersion: 1.0;" [6]=> string(27) "X-AspNet-Version: 4.0.30319" [7]=> string(115) "X-SourceFiles: =?UTF-8?B?RDpcV2ViU2l0ZXM3XFdDRlNlcnZpY2VzXFdlYkFwcGxpY2F0aW9uNVxJbnNlcnRVc2VyLnN2Y1xJbnNlcnREYXRh?=" [8]=> string(21) "X-Powered-By: ASP.NET" [9]=> string(30) "Access-Control-Allow-Origin: *" [10]=> string(42) "Access-Control-Allow-Headers: Content-Type" [11]=> string(35) "Date: Thu, 27 Feb 2014 21:26:35 GMT" [12]=> string(17) "Connection: close" [13]=> string(19) "Content-Length: 248" } NULL NULL

a trebalo bi da dobijem xml (ATOM)
Code:
<?xml version="1.0" encoding="utf-8"?><d:InsertData xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" xml:space="preserve">Success custom message </d:InsertData>

ili JSON
Code:
{"d":{"InsertData":"Success custom message "}}


jel moze neko da mi pomogne sta da radim da dobijem bar jedan od ova dva
[ plus_minus @ 27.02.2014. 21:56 ] @
npr. ovako nešto?

Code (php):


function curlGetContents($url='') {
    $a = curl_init();

    curl_setopt($a, CURLOPT_AUTOREFERER, TRUE);
    curl_setopt($a, CURLOPT_HEADER, 0);
    curl_setopt($a, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($a, CURLOPT_URL, $url);
    curl_setopt($a, CURLOPT_FOLLOWLOCATION, TRUE);      

    $result = curl_exec($a);
    curl_close($a);

    return $result
}

$url = "url adresa";

$rsp = curlGetContents($url);
$rsp_obj = unserialize($rsp);

 


Proveri jel' hoće da šljaka..
nisam testirao.

A ako hoće/neće, za više detalja..

curl setopt manual

Ne može file_get_contents ništa mimo lokala, uglavnom.
Mora curl.

Hoćeš li morati da izvršiš unserialize unutar funkcije, to takođe moraš da testiraš, i vidi da li ti je link koji si dao kao primer, dobro formiran, da li je sintaksa kako valja za php url request. Mislim da imaš višak apostrofa.. i isto tako & zameni sa &amp;

[Ovu poruku je menjao plus_minus dana 27.02.2014. u 23:13 GMT+1]
[ pl4stik @ 27.02.2014. 23:02 ] @
Nemoj molim te, jedva sam ga napravio da bude cross domain callable :)... Elem, izgleda da je request dobar i response je 200 OK, a i "Content-Length: 248" je tacno pa sam ja kao hteo da ga deserijalizujem kao neko ko je pre 3-4 sata prvi put otkucao php :) ... Probao sam bar 20 scripti i sve su bazirane na file_get_contents i curl i nece i nece, pa rekoh mozda neko ima neki ninja know how kako da posaljem get i vratim response kao onaj u browserima ili jQuery
Code:
     
       $(document).ready(function () {
                $('#myButt').click(function (data) {
                    var response = $.ajax({
                        type: 'GET',
                        dataType: "json",
                        url: "http://localhost:10626/InsertUser.svc/InsertData?P_Action='INSERTCOURSEINFO'&p_CourseID=2&p_Course_Descr='Description'&p_Employee_No=11&p_SiteId=11&DateCompleted='1/23/2013'",
                        success: function () {
                            alert(data);
                        },
                        error: function (jqXHR, textStatus, errorThrown) {
                            alert("AJAX error: " + JSON.stringify(jqXHR));
                        }
                    });

                });
            });

[ pl4stik @ 28.02.2014. 00:20 ] @
Evo ga servis
Code:
http://ned.servebeer.com/wcftest/InsertUser.svc/InsertData?P_Action='INSERTCOURSEINFO'&p_CourseID=2&p_Course_Descr='Description'&p_Employee_No=11&p_SiteId=11&DateCompleted='1/23/2013'

Evo ga i sample sa jQuery-em
Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title></title>
    <script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js" ></script>
        <script type="text/javascript">
            $(document).ready(function () {
                $('#myButt').click(function (data) {
                    var response = $.ajax({
                        type: 'GET',
                        dataType: "json",
                        url: "http://ned.servebeer.com/wcfte...tUser.svc/InsertData?P_Action='INSERTCOURSEINFO'&p_CourseID=2&p_Course_Descr='Description'&p_Employee_No=11&p_SiteId=11&DateCompleted='1/23/2013'",
                        success: function () {
                            alert(data);
                        },
                        error: function (jqXHR, textStatus, errorThrown) {
                            alert("AJAX error: " + JSON.stringify(jqXHR));
                        }
                    });

                });
            });
    </script>
</head>
<body>
<input type="button" value="Get values from server" id="myButt" />
</body>
</html>


Jel moguce uopste ovako nesto u php-u?
[ Jbyn4e @ 28.02.2014. 18:19 ] @
Kod mene tvoj primer radi....

php -a
Interactive mode enabled

<?php
$url = "http://ned.servebeer.com/wcfte...tUser.svc/InsertData?P_Action='INSERTCOURSEINFO'&p_CourseID=2&p_Course_Descr='Description'&p_Employee_No=11&p_SiteId=11&DateCompleted='1/23/2013'";
$rsp = file_get_contents($url);
print_r ($rsp);
?>

<?xml version="1.0" encoding="utf-8"?><d:InsertData xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" xml:space="preserve">Success custom message </d:InsertData>



jedino što se dobija xml umesto json odgovora..
[ pl4stik @ 28.02.2014. 19:06 ] @
Jel mozes da mi pokazes kako se to implementira u stranicu ja ne umem nikako...
[ Jbyn4e @ 28.02.2014. 22:38 ] @
Pa valjda upotrebiš datatype xml u tom slučaju, ne json...

Nešto ovako:
http://www.jquerybyexample.net...ess-xml-using-jquery-ajax.html
[ pl4stik @ 28.02.2014. 22:58 ] @
Pa ja sam u ovom slucaju definisao da default format bude xml ali ako bi stavio Accept:application/json u headeru requesta dobio bi json... I sve to nema veze s tim sto ja ne mogu da deserijalizujem ovo

Code:
array(14) { [0]=> string(15) "HTTP/1.1 200 OK" [1]=> string(23) "Cache-Control: no-cache" [2]=> string(43) "Content-Type: application/xml;charset=utf-8" [3]=> string(25) "Server: Microsoft-IIS/8.0" [4]=> string(31) "X-Content-Type-Options: nosniff" [5]=> string(24) "DataServiceVersion: 1.0;" [6]=> string(27) "X-AspNet-Version: 4.0.30319" [7]=> string(115) "X-SourceFiles: =?UTF-8?B?RDpcV2ViU2l0ZXM3XFdDRlNlcnZpY2VzXFdlYkFwcGxpY2F0aW9uNVxJbnNlcnRVc2VyLnN2Y1xJbnNlcnREYXRh?=" [8]=> string(21) "X-Powered-By: ASP.NET" [9]=> string(30) "Access-Control-Allow-Origin: *" [10]=> string(42) "Access-Control-Allow-Headers: Content-Type" [11]=> string(35) "Date: Thu, 27 Feb 2014 21:26:35 GMT" [12]=> string(17) "Connection: close" [13]=> string(19) "Content-Length: 248" } NULL NULL

u ovo
Code:
<?xml version="1.0" encoding="utf-8"?><d:InsertData xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" xml:space="preserve">Success custom message </d:InsertData>

u .netu je to prosto
Code:
        Dim httpWebRequest As HttpWebRequest = DirectCast(WebRequest.Create(TextBox2.Text), HttpWebRequest)
        httpWebRequest.Method = WebRequestMethods.Http.[Get]
        httpWebRequest.Accept = "application/json;odata=verbose;charset=utf-8"
'Ovde definises koij format oces ili xml(ATOM) po defaultu
        Dim response = DirectCast(httpWebRequest.GetResponse(), HttpWebResponse)

        Dim responseString = New StreamReader(response.GetResponseStream()).ReadToEnd()

        TextBox1.Text = responseString

Dva dana ne mogu da posaljem obican get web request, kakav je bre ovo jezik ;)
[ pl4stik @ 01.03.2014. 00:04 ] @
Code:

<HTML>
<BODY>
<?php
$get = file_get_contents("http://ned.servebeer.com/wcfte...tUser.svc/InsertData?P_Action='INSERTCOURSEINFO'&p_CourseID=2&p_Course_Descr='Description'&p_Employee_No=11&p_SiteId=11&DateCompleted='1/23/2013'");
echo json_encode($get);
?>
</BODY>
</HTML>


Perfect :D

[ plus_minus @ 04.03.2014. 18:47 ] @
Citat:
Jel moguce uopste ovako nesto u php-u?


može i ovako..

Code (php):

<HTML>
<BODY>
<?php
echo
 json_encode(
  file_get_contents("http://ned.servebeer.com/wcfte...tUser.svc/InsertData?P_Action='INSERTCOURSEINFO'&p_CourseID=2&p_Course_Descr='Description'&p_Employee_No=11&p_SiteId=11&DateCompleted='1/23/2013'"
));
?>
</BODY>
</HTML>
 
[ pl4stik @ 15.03.2014. 22:54 ] @
Hvala plus_minus
I jos samo ako moze neko da mi kaze zasto dobijam ovo
Code:

"Success custom message <\/d:InsertData>"

umesto
Code:
{"d":{"InsertData":"Success custom message "}}


Jel ovo neki specialni php format json-a ili jos nesto treba da mu radim da postane "obican" json


Fiddler kad dodam Accept: application/json;odata=verbose vraca {"d":{"InsertData":"Success custom message "}} ili .NET ako definisem da prihvati json...
[ plus_minus @ 17.03.2014. 11:50 ] @
Hmm.. znam da je sitinca u pitanju i da za to treba nešto sitno da se odradi, a ne znam konkretno šta, jer vrlo, vrlo slabo radim sa json formatom. Anyway, onda kada mi to popritreba, znam gde ima o tome.

Za početak probaj da dodaš i true, na kraju. To će ti dati array ili niz umesto objekta. E onda vidi šta dobijaš. Možda će ti biti lakše da tako izdvajaš šta treba?
Tu u primeru imaš i jedan escape karakter. Sad.. ne znam kako je pisan source koji dolazi kroz url, nisam pokušavao da linkujem to što želiš.

Code (php):


 $result = json_encode(
  file_get_contents('http://url.com/page?this=that'), TRUE);
 
 var_dump($result);

# or

 var_export($result);

 


[ pl4stik @ 17.03.2014. 12:46 ] @
Nece, isto vraca, dobro nema veze Jbyn4e-ovo resenje vraca ATOM tako da sad bar imam nesto ... Sa onom prethodnom xml reprezentacijom nije licilo ni na sta...