Postleitzahl zu Stadt / Staat Nachschau XML-Datei?
Frage
Der Versuch, eine XML-Datei zu finden, ich anstelle einer Look-up-Datenbanktabelle verwenden kann, bis wir unser Web-Hosting auf die rechte Seite DB umgeschaltet bekommen.
Kann jemand verweisen mich in eine XML-Datei mit Elementen, deren Kinder haben zipcodes, Staaten und Städte? Z.
<zip code="98117">
<state>WA</state>
<city>Seattle</state>
</zip>
oder
<entry>
<zip>98117</zip>
<state>WA</state>
<city>Seattle</city>
</entry>
Ich werde LINQ in C # verwendet werden diese Daten abgefragt werden.
Lösung
Dieses eine Karo heraus, das es verschiedene kostenlose Varianten bietet.
Andere Tipps
Es ist eine kostenlose Datenbank Postleitzahl sich unter:
Ich glaube, es ist ein CSV-Datei, aber Sie es auf eine XML-Datei ganz einfach konvertieren kann.
Hier Code city.state autofill zu tun, basierend auf einem zipcode eingetragen.
<script type="text/javascript">//<![CDATA[
$(function() {
// IMPORTANT: Fill in your client key
var clientKey = "js-9qZHzu2Flc59Eq5rx10JdKERovBlJp3TQ3ApyC4TOa3tA8U7aVRnFwf41RpLgtE7";
var cache = {};
var container = $("#example1");
var errorDiv = container.find("div.text-error");
/** Handle successful response */
function handleResp(data)
{
// Check for error
if (data.error_msg)
errorDiv.text(data.error_msg);
else if ("city" in data)
{
// Set city and state
container.find("input[name='city']").val(data.city);
container.find("input[name='state']").val(data.state);
}
}
// Set up event handlers
container.find("input[name='zipcode']").on("keyup change", function() {
// Get zip code
var zipcode = $(this).val().substring(0, 5);
if (zipcode.length == 5 && /^[0-9]+$/.test(zipcode))
{
// Clear error
errorDiv.empty();
// Check cache
if (zipcode in cache)
{
handleResp(cache[zipcode]);
}
else
{
// Build url
var url = "http://www.zipcodeapi.com/rest/"+clientKey+"/info.json/" + zipcode + "/radians";
// Make AJAX request
$.ajax({
"url": url,
"dataType": "json"
}).done(function(data) {
handleResp(data);
// Store in cache
cache[zipcode] = data;
}).fail(function(data) {
if (data.responseText && (json = $.parseJSON(data.responseText)))
{
// Store in cache
cache[zipcode] = json;
// Check for error
if (json.error_msg)
errorDiv.text(json.error_msg);
}
else
errorDiv.text('Request failed.');
});
}
}
}).trigger("change");
});
//]]>
Hier ist die API - http://www.zipcodeapi.com/Examples#example1 .
Sie können den Inhalt in XML-Anforderung über, um die Daten wieder direkt in XML erhalten Sie in dem Format in der Anfrage verwenden .xml können.
Wird reagieren mit
<response>
<zip_code>90210</zip_code>
<lat>34.100501</lat>
<lng>-118.414908</lng>
<city>Beverly Hills</city>
<state>CA</state>
<timezone>
<timezone_identifier>America/Los_Angeles</timezone_identifier>
<timezone_abbr>PDT</timezone_abbr>
<utc_offset_sec>-25200</utc_offset_sec>
<is_dst>T</is_dst>
</timezone>
<acceptable_city_names/>
</response>
Api docs sind unter https://www.zipcodeapi.com/API