javascript - 将图像从 URL 获取到 Objective-C 中的数组中
<p><p>我想从一个页面获取一个包含所有图片的 url 的数组。</p>
<p>Javascript:</p>
<pre><code><script>
function newEl(tag){return document.createElement(tag);}
window.addEventListener('load', onDocLoaded, false);
function onDocLoaded()
{
myAjaxRequest("http://foo.com/bar.html", onHtmlLoaded);
}
function onHtmlLoaded(ajax)
{
var div = newEl('div');
div.innerHTML = ajax.responseText;
var imgs = div.getElementsByTagName('img');
for (var i=7;i<imgs.length;i++)
{
document.write("<p id='"+i+"'>"+imgs.src+"<p/>");
}
}
function myAjaxRequest(url, callback)
{
var ajax = new XMLHttpRequest();
ajax.onreadystatechange = function()
{
if (this.readyState==4 && this.status==200)
callback(this);
}
ajax.onerror = function()
{
console.log("AJAX request failed to: " + url);
}
ajax.open("GET", url, true);
ajax.send();
}
</script>
</code></pre>
<p>我在这里所做的是获取一个页面 (<em>www.foo.com/urls.html</em>),其中包含来自 <em> <a href="http://foo.com/bar.html" rel="noreferrer noopener nofollow">http://foo.com/bar.html</a> 的所有图像 url </em> 通过 javascript 看起来像这样:</p>
<p>HTML:</p>
<pre><code><p id="1">http://www.foo.com/x.jpg</p>
<p id="2">http://www.foo.com/y.jpg</p>
<p id="3">http://www.foo.com/z.jpg</p>
...
</code></pre>
<p>然后我希望能够在 objective-c中创建一个包含所有 url 的数组,这可能吗?</p>
<p>还有比这更好的方法吗?</p></p>
<br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
<p><p>您应该将图像 url 存储到您的数据库中。</p>
<p>编写一个脚本来获取这些图像,然后放入一个 json 数组中</p>
<p><strong>PHP</strong></p>
<pre><code><?php
$mysqli = new mysqli("example.com", "user", "password", "database");
if ($mysqli->connect_errno) {
echo "Failed to connect to MySQL: (" . $mysqli->connect_errno . ") ";
}
$res = $mysqli->query("SELECT image_name FROM images");
$data=array();
while ($row = $res->fetch_assoc()) {
$data['images'][] = $row['image_name'];
}
echo json_encode($data);
?>
</code></pre>
<p>然后从您的 <code>iOS</code> 应用发出 <code>JSON</code> 数据 <code>PHP</code> 脚本的请求。</p>
<p><strong>JSON:</strong></p>
<pre><code>{
"images": [
"http: //xxxxxxxxx.co.uk/video%20images/ONYX%20sofa.jpg",
"http: //xxxxxxxxx.co.uk/video%20images/aaron%20duran.jpg",
"http: //xxxxxxxxx.co.uk/video%20images/littledragon.jpg",
"http: //xxxxxxxxx.co.uk/video%20images/cantalivering%20house.jpg"
]
}
</code></pre>
<p>最后在您的应用程序中将其存储到一个数组中。</p>
<p><strong>IOS</strong></p>
<pre><code>NSURL *url = ;
//Creating the data object that will hold the content of the URL
NSData *jsonData = ;
NSError *error = nil;
//parse the JSON
NSDictionary *result = [NSJSONSerialization JSONObjectWithData:jsonData
options:NSJSONReadingMutableContainers error:&error];
//Here is the array
NSArray *images = result[@"images"];
NSLog("images =%@", images);
</code></pre></p>
<p style="font-size: 20px;">关于javascript - 将图像从 URL 获取到 Objective-C 中的数组中,我们在Stack Overflow上找到一个类似的问题:
<a href="https://stackoverflow.com/questions/23495676/" rel="noreferrer noopener nofollow" style="color: red;">
https://stackoverflow.com/questions/23495676/
</a>
</p>
页:
[1]