菜鸟教程小白 发表于 2022-12-12 11:40:36

ios - 通过 REST API 将图像保存到 Parse,然后在 iOS 应用程序中使用它


                                            <p><p>我正在开发一个应用程序,用户可以在其中通过 Web 界面将图像存储在 Parse 上。然后可以在原生 iOS 应用中显示这些图像。</p>

<p>图像通过 Parse REST API 上传到 Parse;然后将存储图像的 URL 保存为 <code>PFObject</code> 的字符串属性。这是我为此目的使用的 javascript 代码:</p>

<pre><code>function postImageToParse(fileName, file, onSuccess, onError) {

    file = file.replace(/^data:image\/(png|jpeg|jpg);base64,/, &#34;&#34;);

    var binaryImg = atob(file);
    var length = binaryImg.length;
    var ab = new ArrayBuffer(length);
    var ua = new Uint8Array(ab);
    for (var i = 0; i &lt; length; i++) {
      ua = binaryImg.charCodeAt(i);
    }
    var blob = new Blob(,{type:&#34;image/jpeg&#34;});

    var serverUrl = &#39;https://api.parse.com/1/files/&#39; + basename(fileName);
    $.ajax({
      type: &#34;POST&#34;,
      beforeSend: function(request) {
            request.setRequestHeader(&#34;X-Parse-Application-Id&#34;, &#39;...&#39;);
            request.setRequestHeader(&#34;X-Parse-REST-API-Key&#34;, &#39;...&#39;);
            request.setRequestHeader(&#34;Content-Type&#34;, file.type);
      },
      url: serverUrl,
      data: blob,
      processData: false,
      contentType: false,
      success:onSuccess,
      error:onError
    });
}
</code></pre>

<p>这工作正常,我得到了表单的 URL:</p>

<pre><code>http://files.parse.com/b6a8c6d1-ba52-4d82-bde7-d2f2c9bb6fe4/6279b03f-521a-4481-97ae-553a0396ff98-xyz
</code></pre>

<p>现在,我尝试在 iOS 上使用 <code>PFImageView</code> 来检索/显示图像,如 <a href="https://parse.com/questions/saving-an-image-to-parse-through-the-rest-api-then-getting-it-in-ios" rel="noreferrer noopener nofollow">here</a> 所述,但发现自己无法创建一个 <code>PFFile</code> 以作为文件属性传递给 <code>PFImageView</code> 对象,正如此片段所要求的那样:</p>

<pre><code>PFImageView *creature = [ init];
creature.image = ; // placeholder image
creature.file = (PFFile*)file;
;
</code></pre>

<p>当然,我可以通过直接访问存储在我的 PFObject 中的 URL 来下载图像,但我想知道这是否正确以及是否有更好的方法来处理这个问题。</p>

<p>那么,在所描述的场景中,我应该如何获取存储在 Parse 上的图像,我有用于上传它的 REST API 调用返回的 URL?</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>我查看了<code>PFFile</code>的界面,没有找到直接下载<code>PFFile</code>的方法。但是,您说您将文件的 URL 设置为 <code>PFObject</code> 的字符串属性。相反,为什么不将该属性设置为 <code>PFFile</code>?</p>

<pre><code>PFObject *object = ....
PFFile *imageFile = ;
creature.file = file;
</code></pre></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 通过 REST API 将图像保存到 Parse,然后在 iOS 应用程序中使用它,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/16964750/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/16964750/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 通过 REST API 将图像保存到 Parse,然后在 iOS 应用程序中使用它