【问题标题】:PHP backend in Spotify App not workingSpotify 应用程序中的 PHP 后端无法正常工作
【发布时间】:2012-06-29 00:42:20
【问题描述】:

我正在尝试制作一个接收用户信息并将其发送到 SQL 数据库的 spotify 应用程序。但是,我不希望使用 ajax 完成此操作,因为我希望提交信息以将用户移动到新页面,同时将信息发布到后台的数据库中。

到目前为止,这是我的代码:

function complete2() {
var name = document.getElementById("inputname").value;
var form = '<form action="http://site.net/dbconnect.php" method="post" style="display:none">' + '<input type="text" name="name" value="' + name + '">' + '</form>';
$('body').append(form);
$(form).submit();
}

 </script>
 </head>
 <body>
<form id = "submitform" name = "submitform" action = "index.html" method = "POST" onsubmit = "complete2();" >
Name: <input type = "text" id = "inputname"> <br>
<input type = "submit" value = "Create">
</form>
 </body>
 </html> 

【问题讨论】:

  • 你不能只从数据库中的 php 中发送一个标头重定向,例如 header("Location: sp://APP_ID/thenextpage.html")... 我认为 Spotify 在这方面本质上只是一个 HTML 客户端,并且会理解标头。在这种情况下,您只需照常发布,可能会发送您想要重定向到的位置,以便在外部服务器上没有硬编码。
  • Spotify 应用程序不允许您使用任何 PHP,所以很遗憾我认为这行不通
  • 嗯,你不会在 spotify 中使用 php ......你会做你现在正在做的同样的事情 - 在你发布请求的外部服务器上运行 php。
  • 我明白你在说什么,我误会了。我仍然遇到问题。我得到:不允许加载本地资源
  • 这是来自 php 服务器还是来自 spotify 客户端?

标签: javascript jquery html spotify


【解决方案1】:

所以我知道您不想使用 AJAX,但如果您想在本地应用程序中加载不同的 html 文件,并且 Spotify 不尊重内部资源的位置标头,那么您将被 ajax 卡住。但是,您可以使其类似于标准帖子会发生的情况,例如:

$(function(){
  $('#submitform').submit(function(e){
     e.preventDefault();
     $.post(
         $(this).attr('action'), 
         {'inputname': $(this).find('#inputname').val()}, 
         function(){ window.location.href = 'sp://yourapp/nextpage.html'; }
     );
  });
});

【讨论】:

  • 这仍然将我带到 PHP 页面,而不是下一个 spotify 页面。同样,POST 也不起作用,因为我正在对其进行测试,并且它正在将空值添加到数据库中
  • 我让数据库部分正常工作(将其从 POST 更改为 GET 并取消了 'inputname' 的引号),但页面重定向仍然不起作用
【解决方案2】:

这是一个获取数据的示例

$.getJSON("http://www.exx.com/getjsondata.php", function (data) {
parsetheresponse(data) ; 
} 

这是一个发布数据的示例(仍然是 JSON)

$.post("http://www.exx.com/postdataspotify.php", { albumname: "test", username: "test2" });

希望它会有所帮助。

不要忘记将http://www.exx.com 放入清单文件中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-08-24
    • 2019-03-22
    • 2021-04-09
    • 1970-01-01
    • 1970-01-01
    • 2012-01-02
    • 1970-01-01
    相关资源
    最近更新 更多