Вызов простого API внешнего / веб-сервиса с использованием классов .Net 4.0, ASP.NET - PullRequest
0 голосов
/ 13 декабря 2011

Никогда ранее не вызывал API и не уверен, какие классы использовать в ASP.NET сделать это. Я мог бы, вероятно, очистить понимание от чтения различные примеры звонков в другие службы, но надеялся, что кто-то может предложить, какие из них будут более конкретными для моих потребностей, чтобы я мог получить быстрый старт на вещи. Пример вызова этого API с помощью скрипта PHP приведен ниже, так что если кто-то может ударить немного кода, используя HttpWebRequest и WebClient, было бы замечательно увидеть его в действии для указанного примера, а также для получения ответа от API в HttpRequest. Также возможно ли вызывать такие API из клиента / браузера, используя Jscript, или эти вызовы должны выполняться со стороны сервера, и результат передается клиенту после?

    OUTPUT: The API will output the fields below:

error   If any error occurs while processing your request, this field will contain an error message. Otherwise, 'OK' will be returned.
eta It's a string containing the Estimated Time of Arrival
price   The price charged to deliver the goods. GST is already included.
Note that in the output, fields will be line-separated (character '\n') and each line will contain a field name and respective value separated by '='. See example below.

error=OK
eta=Overnight
price=14.52
The following piece of code is a simple example of how to access our Calculator API using PHP.

<?
$calculator_url = "http://www.e-go.com.au/calculatorAPI";

/* from/to postcodes */
$pickup   = 2000; //From Sydney
$delivery = 4000; //From Brisbane

/* Dimensions */
$width  = 40;
$height = 35;
$depth  = 65;
$weight = 2;

$ego_params  = "?pickup=$pickup&delivery=$delivery";
$ego_params .= "&width=$width";
$ego_params .= "&height=$height&depth=$depth&weight=$weight";
$ego_quote  = file($calculator_url . $ego_params);

foreach ($ego_quote as $num=>$quote) {
    $quote = trim($quote);
    $quote_field = explode("=", $quote);
    print "Field=" . $quote_field[0] . "\tValue=" . $quote_field[1] . "\n";
}
?>

1 Ответ

1 голос
/ 13 декабря 2011

Просто используйте WebClient.DownloadString:

http://msdn.microsoft.com/en-us/library/fhd1f0sw(v=vs.80).aspx

...